Wordpressのデフォルトの使用では、全く利用しないタグが出力されるケースが多々あります。
そこで、今回は「記事投稿の画像挿入で余計なHTMLタグを削除する方法」をご紹介します。
Wordpressの投稿画面で、本文上部に表示される【メディアを追加】をクリックすると、画像を選択して記事本文に挿入する事ができます。
この時に、【ビジュアル】ではなく、実際に出力されるソースとなる【テキスト】をクリックすると、
<a href="画像URL"><img src="画像URL" alt="代替テキスト" title="タイトル" /></a>
というように余計なクラス指定などのタグが挿入されているのが分かります。
さて、それでは、実際のカスタマイズ方法ですが、
WordpressのPHPカスタマイズは、たいていの場合はコアファイルを修正する事なく、function.phpに追記していく事で、求めていることができるようになります。
該当するテーマのfunction.phpを開き、
get_image_tag というアクションフックを利用します。
imgタグを生成するタイミングで不要なタグを除去することができるというものです。
ソースは以下の通り
[php]
function my_remove_img_attr($html, $id, $alt, $title, $align, $size){
$html = preg_replace('/ width="d+"/', '', $html);
$html = preg_replace('/ height="d+"/', '', $html);
$html = preg_replace('//', '', $html);
$html = preg_replace('/ title=".+"/', '', $html);
return $html;
}
add_action( 'get_image_tag', 'my_remove_img_attr', 1 ,6);
[/php]
これで挿入されるタグは
<a href="画像URL"><img src="画像URL" alt="代替テキスト" /></a>
となり、スッキリとしました。
今回のカスタマイズ「余計なタグを削除することで得られるメリット」とは、
- 自分自身がタグをみた時に分かりやすい
- Google検索エンジンロボットライクになる
ということです。
ただし、この不要なタグを取り除くことで、検索エンジン上位表示できるということではなく、あくまで巡回する検索エンジンロボットがインデックスのキャッシュがしやすくなる程度くらいに考えておく方がいいでしょう。
参考:WordPressの画像投稿で挿入されるタグのカスタマイズ http://web-folders.net/wordpress/362/
参考:画像を投稿に挿入するタグをカスタマイズ http://www.sysbird.jp/wptips/2011/07/04/%E7%94%BB%E5%83%8F%E3%82%92%E6%8A%95%E7%A8%BF%E3%81%AB%E6%8C%BF%E5%85%A5%E3%81%99%E3%82%8B%E3%82%BF%E3%82%B0%E3%82%92%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA%E3%81%99/