カテゴリ一覧リンクのaタグからtitleを消す
WordPressのテンプレートタグには、カテゴリ一覧リンクを表示してくれる
wp_list_categories というタグが存在します。
フッターやサイドバーに表示したり、使う機会の多いタグだと思います。
このタグはリストで括られたaタグHTMLを自動生成してくれて便利なのですが、
aタグに余計なコードを入れてくれます。
<li class="cat-item cat-item-7"> <a href="https://site-manage.net/archives/category/wp-custom/" title="WordPressのカスタマイズに含まれる投稿をすべて表示">WordPressのカスタマイズ</a> (17) </li>
このようにaタグにtitleが入っています。
title="WordPressのカスタマイズに含まれる投稿をすべて表示"
普通のブログとして使う際には特に気にしない要素ですが、SEO面を考えると
あまりよろしくないコードです。。
今回は、出力したカテゴリ一覧リンクからaタグのtitleのみ除くカスタマイズ方法を
紹介します。
今使っているテーマ内に functions.php を用意する
既にある場合はそちらにコードを書いていきます。
無い場合は、同名のPHPファイルをテーマ内に作成します。
テンプレートのカテゴリ一覧リンクからaタグのtitleだけを消す
// カテゴリ一覧リンクからaタグtitleを削除 // function del_category_list_a_title($output) { $output = preg_replace('/ title="[^"]*"/', '', $output); return $output; } add_filter( 'wp_list_categories', 'del_category_list_a_title' );
wp_list_categories がソースを出力する前に、
正規表現で「 title="***"」を削除させています。
これでカテゴリ一覧リンクのソースからtitleが消えました。
<li class="cat-item cat-item-7"> <a href="https://site-manage.net/archives/category/wp-custom/">WordPressのカスタマイズ</a> (17) </li>
すっきりです。
関連記事