WordPress: タイトルタグの重複を改善する

plug-in,WordPress

Google ウェブマスターツールでブログの最適化状態を確認したところ、「タイトルタグの重複」が多数発生していることに気がつきました。

調査の結果、「URLパラメータによるコンテンツ重複」と「2ページ目以降のページ番号抜け」という2つの問題があったので、原因と対策をまとめておきます。

URLパラメータによるコンテンツ重複

まず1つめの問題として、ページコンテンツに影響しないURLパラメータにより、コンテンツの重複が起きていました。

一例を示します。

上記URLは"?pcview=true"の有無で違いがありますが、実際はタイトル含めて同じ内容を表示します。

これをGooglebotは「タイトルタグの重複」と見なすようです。

URLパラメータによるコンテンツ重複の原因

原因として、以前使用していた携帯電話対応プラグイン「Ktai Style」の影響が考えられます。

Ktai Style動作時には “?pcview=true" や “?img=link" で表示内容が変わったのですが、その事をGooglebotは覚えているようです。

Ktai Styleを使わなくなったので “?pcview=true" に意味は無くなったのですが、それでもGooglebotはページを探し続け、「タイトルタグの重複」としているのだと思います。

URLパラメータによるコンテンツ重複への対策

URLパラメータによるコンテンツ重複の対策として、 HTMLヘッダーに「rel="canonical"」を追加しました。

「rel="canonical"」は、複数の類似した内容のページの中で優先されるページを検索エンジンに通知する「URL正規化タグ」です。

「rel="canonical"」で優先されるURLを示すと、未対応のURLパラメータで発生していた重複コンテンツが1つのコンテンツを指し示すようになり、結果としてタイトルタグの重複が解消されます。

WordPress本体も、ページや個別記事の表示では「rel="canonical"」を出力しますが、インデックスやタグ・カテゴリページではcanonicalタグを出力しません。

インデックスやタグ・カテゴリページでも「rel="canonical"」を出力するには、「All in One SEO Pack」などSEO対策プラグインを利用するのが簡単です。

まだSEO対策プラグインを導入していないようでしたら、この機会に利用を検討してみてください。

2ページ目以降のページ数抜け

タイトル重複の2つめの原因として、アーカイブやカテゴリのテーマファイルでページを意識しておらず、ページが変わってもページタイトルが変わっていませんでした。

Googlebotは律儀に各ページを読み込んでいたため、これも「タイトル重複」と見なされていたようです。

この問題の対策として、各テーマテンプレートファイルを修正し、タイトルにページ番号を持たせようにしました。

たとえば index.php のタイトルは、以下のよう生成しています。

<?php 
    $title = get_bloginfo('name');
    if($paged){$title .= "の記事一覧 ".$paged."ページ目 ";}
?>
    <title><?php echo $title; ?></title>

あとがき

Googleのパンダアップデート実施後、ブログのアクセスが落ちたのは、URLパラメータによるコンテンツ重複が原因かも?と考えています。

まだ今回の対策の結果が見えていませんが、なにか変化があれば随時ブログで報告します。

少しでもアクセスが回復してくれると良いんだけどなー。