WordPressのヘッダー部分でtitleタグが重複する原因と対処方法
WordPressで作ったサイトで、ヘッダー部分のコードを見てみると、<title>タグが重複する場合があります。
タイトルが2つあると、SEO上よろしくないと思われますし、何よりスッキリしないですよね。
今回は、この現象の原因と対処方法について書きたいと思います。
<title>タグが重複する原因
<head>~</head>への記述
ちょっと前のサイトになると、<head>~</head>部分に、下記のようなタイトルの記載が多く見られます。
1 |
<title><?php wp_title( '|', true, 'right' ); ?></title> |
これは間違いではないです。
では、もうひとつの<title>タグはどこからやってくるのでしょうか。
原因はwp_head()にあり
ヘッダー部分にもうひとつ、下記の記述があるかと思います。
1 |
<?php wp_head(); ?> |
これは、WordPress仕様上必要な記述ですが、WordPress4.1から、wp_head()を読んだ時点で、タイトルやその他の情報がソースに記述されるようになりました。
ということは、1つ前の<title>タグ内の記述と、wp_head()の記述の2種類が表示されてしまうため、titleが被ってしまいます。
対処方法
解決方法は2つ。
まずひとつ目は、下記の記述をheader.php内から削除する事。
1 |
<title><?php wp_title( '|', true, 'right' ); ?></title> |
単純に、<title>~</title>が1行削除されます。
そしてふたつ目は、functions.phpに、下記のように追記する事。
1 2 |
/*titleを記述させない方法*/ remove_action( 'wp_head', '_wp_render_title_tag', 1 ); |
これで、wp_head()で自動的にタイトルが埋め込まれないようになります。
さいごに
wp_head()では、他にもいろんなメタ情報などが自動的に埋め込まれるようです。
今回は、タイトルを例に説明しましたが、不要なものがヘッダー内にある場合は、同じ方法で削除することができます。
以上、同じような事でお困りの際には是非お試しください^^
公開日:2019年6月22日
最終更新日:2019年6月23日