WordPressでtitleタグをページの種類ごと(固定ページ・記事・アーカイブなど)に設定する方法

こんにちは、ゾノ( @ozonosho )です。
さて、今日のブログではWordPressでtitleタグをページの種類ごと(固定ページ・記事・アーカイブなど)に設定する方法を紹介したいと思います。
前回のブログ『WordpressでSEO効果抜群のおすすめプラグイン5選!』でページタイトル(=titleタグの中身)の重要性をすこし書いたので、プラグイン不要でtitleタグを設定するコードを実装してみました。
WordPressでtitleタグをページの種類ごと(固定ページ・記事・アーカイブなど)に設定する方法
実装は簡単で、header.phpを開き<head>にある<title>タグの中身を下記のようなコードに書き換えるだけです。
<?php
global $page, $paged;
if(is_front_page()) : //トップページ
bloginfo('name');
elseif(is_home()) : //ブログページ(ブログサイトの場合はトップページ)
wp_title('|', true, 'right');
bloginfo('name');
elseif(is_single()) : //記事ページ
wp_title('');
elseif(is_page()) : //固定ページ
wp_title('|', true, 'right');
bloginfo('name');
elseif(is_author()): //著者ページ
wp_title('|', true, 'right');
bloginfo('name');
elseif(is_archive()) : //アーカイブページ(カテゴリーページなど)
wp_title('|', true, 'right');
bloginfo('name');
elseif(is_search()) : //検索結果ページ
wp_title('');
elseif(is_404()): //404ページ
echo '404|';
bloginfo('name');
endif;
if($paged >= 2 || $page >= 2) : //2ページ目以降の場合
echo '-' . sprintf('%sページ',
max($paged,$page));
endif;
?>
WordPressには「記事ページを判別するための関数is_single()」「固定ページを判別するための関数is_page()」など、さまざまな関数が用意されているので、それらを利用してページごとにtitleタグを設定することができます。
ちなみに「bloginfo(‘name’)」は設定ページで定義した自身のサイト名を呼び出す関数なので、たとえば上記コードの一番上「is_front_page()=トップページの場合」ならtitleタグにはサイト名を設定するようにしています。
また「wp_title()」はそのページのタイトル欄に入力した内容を呼び出す関数なので、たとえば上記コードの固定ページでは「wp_title(‘|’, true, ‘right’)」と「bloginfo(‘name’)」が続いているので、titleタグは「固定ページのタイトル|サイト名」という形式で出力されます。
このようにページの種類ごとにtitleタグを自由に設定することができます。
titleタグは検索エンジンがコンテンツの検索順位を決定するうえでも非常に重要な要素となるので、ぜひページごとに最適な内容を設定してみてください。
【おまけ】記事ごとにtitleタグを設定する方法
さらに各記事ごとにtitleタグを設定したい方のために実装方法をまとめたので、宜しければこちらの記事も参照ください。
おわりに
以上、今回の記事ではWordPressでtitleタグをページの種類ごと(固定ページ・記事・アーカイブなど)に設定する方法を紹介させていただきました。
当サイトではWordPressのカスタマイズ依頼を請け負っています。実現したい機能・要望がある方はぜひ下記ページよりご相談ください。










