wordpressのテーマの多くは、カテゴリーやタグページといったアーカイブページでタイトルを出力時にthe_archive_titleが使われています。
海外の無料で利用できるテーマやブランクテーマ(カスタマイズ前提の必要最小限のファイルとコードだけ含まれたテーマ)などは特にそのようなケースが多いように思います。
ただ、この関数は便利なんですが、タイトルを表示する際に「カテゴリー:」や「タグ:」といったものを一緒にくっつけて吐き出してしまうのです。
気にならなければ問題ないのですが、個人的に絶妙にダサい…と感じています。
ここではたった1行のソースをfunctions.phpに追記すれば「カテゴリー:」や「タグ:」を消す方法を紹介します。
add_filterを使う
wordpressをカスタマイズした経験のある方でしたら、このadd_filter()を一度は使用したことがあると思います。
馴染みがないという方のために簡単に説明すると…
記事タイトル等を表示するthe_title()
や記事本文を表示するthe_contents()
といったwordpressの関数が実行されるタイミングに合わせて、自分で用意した関数を実行させて何らかの処理を行なうといったものです。
分かりにくいかと思いますので少し例を挙げてみます。
例えば、投稿記事本文の最後に文章を付け足すとします。そのような場合は以下のようになります。
function content_add_text($content){
if(is_single()){
$content = $content.'<p>本文の最後に付け足す文章</p>';
}
return $content;
}
add_filter('the_content','content_add_text');
こうすることによって投稿ページで表示される記事本文の最後に「本文の最後に付け足す文章」といったテキストが付け足されます。
ザックリとした説明ですがこのような感じでadd_filter()が作用するということが分かっていただければと…
少し前置きが長くなりましたが本題に戻ります。
アーカイブページの「カテゴリー:」や「タグ:」を消すための方法は以下のとおりです。
add_filter('get_the_archive_title_prefix','__return_false');
これだけです。この1行をfunctions.phpに追記すれば、「カテゴリー:」や「タグ:」といった文字が消えます。
また、このadd_filter()はwordpressをカスタマイズしていく中で色々使う機会も増えていきます。他の使い方については別の機会に触れてみたいと思ってますので、まずは「カテゴリー:」や「タグ:」を消すところから始めてみてください。