WordPress4.4以降では、下記のようにwp_titleを使ってtitleタグを生成することが非推奨になりました。
<title><?php wp_title('|',true,'right'); ?><?php bloginfo('name'); ?></title>
従来のやり方だと、ページネーションで生成されたページのtitleタグが重複して「Search Console」で怒られたり、SEOを考えてめちゃめちゃif文を使ってtitleタグを書いたり…と、結構たいへんでした。
現在では、functions.phpに以下のコードを書いて、titleタグを自動生成させるのが推奨されています!
titleタグ生成のコード
自動で生成されるので、header.phpにtitleタグを書く必要はありません。
書いてしまうと、titleタグが2つになっちゃいます。
これのおかげで、カテゴリーやアーカイブページのページ番号まで自動で付与してくれるので、titleタグの重複がなくなります。
//---------------------------------------- // titleタグ //---------------------------------------- function theme_slug_setup() { add_theme_support('title-tag'); } add_action('after_setup_theme', 'theme_slug_setup');
セパレータを変更したい
わたしは、「|」で区切るほうが好きなので、下記のようにセパレータを変更したりします。
//---------------------------------------- // titleタグ //---------------------------------------- function theme_slug_setup() { add_theme_support('title-tag'); } add_action('after_setup_theme', 'theme_slug_setup'); //セパレータ function title_separator($sep) { $sep = '|'; return $sep; } add_filter('document_title_separator', 'title_separator');