タイトルそのままですが、WordPressカテゴリに説明を入れるとカテゴリ一覧のリンクtitleが説明になるのをリンク名に変更する方法です。ちょっとマニアックな内容&設定です。
WordPressでは簡単にカテゴリが登録できます。カテゴリの登録にはカテゴリ名、スラッグと「説明」というのが登録できるようになっています。
WordPressのテーマ(Theme)にはカテゴリの説明を表示できるものがあり、本サイトで利用している(2013年10月31日現在)Twenty Thirteenでもカテゴリページで表示されるようになっています。(本サイトでは設定していませんが。。。)
カテゴリの説明を入れることができるので、訪問したユーザにとっても便利な機能ですが、一点問題が。。。
カテゴリの説明を入れると、カテゴリ一覧のaタグのタイトルが説明になってしまいます。
具体的には説明を入れないときのhtmlタグは以下のようになっています。
<a href="https://debate.co.jp/wordpress/" title="WordPress に含まれる投稿をすべて表示">WordPress</a>
説明を入れると以下のようになってしまいます。
<a href="https://debate.co.jp/wordpress/" title="カテゴリ説明に入れた文章">WordPress</a>
ユーザからの見た目は変わらないのですが、マウスオーバー時や検索エンジンのことを考えるとアレなので、これを
<a href="https://debate.co.jp/wordpress/" title="WordPress">WordPress</a>
上記のような状態にする方法です。
カテゴリ一覧のリンクタグ修正方法
WordPressのテーマでなくWordPress本体のファイルを弄ります。他に方法があれば良いのですが、良い方法が思いつかずに。。。
WordPressの本体ファイルを弄くるので、以下の注意があります。
- それなりに知識が必要
- WordPress「本体」のアップデートがあったら、再度書き換えが必要になる
それでもOKという人は設定してみてください。
WordPress 3.7.1をベースに記載します。
wordpress/wp-includes/category-template.php の846行目あたり。
ちなみにcategory-template.phpのパーミッションは644なので、適宜変更が必要かもです。
if ( $use_desc_for_title == 0 || empty($category->description) ) $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"'; else $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"'; $link .= 'title="' . esc_attr( strip_tags( apply_filters( 'category_description', $category->description, $category ) ) ) . '"'; */
上記の記述があるのですが、それを、
/* if ( $use_desc_for_title == 0 || empty($category->description) ) $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"'; else $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"'; $link .= 'title="' . esc_attr( strip_tags( apply_filters( 'category_description', $category->description, $category ) ) ) . '"'; */ */ $link .= 'title="' . esc_attr( sprintf(__( 'View all posts filed under %s' ), $cat_name) ) . '"';
こちらに変更します。
カテゴリの説明があったら、aタグの中身を説明にしてねって条件式を消して、そのままカテゴリタイトルを入れてね、という設定に変えています。
SEO的にもaタグのtitle要素に余計な文字を詰め込むのはアレなので、設定すると良いかもしれません。
くれぐれも設定は自己責任、バックアップをとって行なってくださいね。。。