スポンサーリンク

こんにちは eax(@eaxjp)です。

今日、カテゴリ以外のアーカイブにnoindex,followタグを入れました。

アーカイブとは

アーカイブとはWordpress上で
カテゴリ・年月ごとにまとめたアーカイブ・タグ・投稿者別に
記事一覧を表示するページの事。

テーマではarchive.phpになると思います。

カテゴリ以外のアーカイブをnoindexにする理由

それはもちろん重複コンテンツ対策です。

アーカイブとカテゴリは似通ってしまう事もあり、
アーカイブ、タグ、投稿者のすべてのアーカイブページがインデックスされると
1記事がカテゴリページも含めると4箇所表示される事になり
重複コンテンツの扱いを受ける可能性があります。

そこで、カテゴライズSEOでも書きましたが、
メインのリンク・ページランクの分配はカテゴリページにして、
残りのアーカイブページはnoindexにしてインデックスしなくします。

robotsのメタタグはheadタグ内にこのタグを入れます。

<meta name="robots" content="noindex,follow" />

noindexでインデックスされるのを防ぎ、
followは無くても良いみたいですが、あった方が良いみたいです。

上のタグだとインデックスはしないけどリンクはたどるのでページランクの
分配もされる様です。

重複コンテンツ対策にrobots.txtで完全にブロックしてしまう方法もありますが
これだと検索エンジンから全く見えないのであまり良く無いみたいです。

Google は、ウェブサイト上の重複コンテンツに対するクローラ アクセスを禁止することは、robots.txt ファイルかその他の手段かにかかわらず、おすすめしていません。重複コンテンツを含むページをクロールできないと検索エンジンではそれらの URL が同じコンテンツを指していることを自動検出できないため、このような URL を独立した個別のページとして効率的に処理する必要があります。検索エンジンではこのような URL をまだクロールできないので、rel="canonical" リンク要素、URL パラメータ処理ツール、301 リダイレクトを使用してこのような URL を重複としてマークしてください。

重複するコンテンツ - ウェブマスター ツール ヘルプより引用

 

WordPressでの設定方法

BLOGEではarchive.phpにこんなコードを入れました。

<?php if (is_category() == false) :?>
<meta name="robots" content="noindex,follow" />
<?php endif; ?>

確認したらブログトップにもnoindexが…w(゜o゜*)w
コードを入れたのもheader.phpでした。
修正したコードはこちら

<?php if (is_archive() && is_category() == false) :?>
<meta name="robots" content="noindex,follow" />
<?php endif; ?>

カテゴリページ以外のアーカイブページならメタタグを入れるコードです。
試しに、2014年4月のアーカイブページのソースを見てもちゃんと入ってます。
2014年4月のアーカイブページのソース noindex,follow のrobotsメタタグ入

あとがき

本当は前に設定したはずなのに消えてしまったので、
今後の備忘録的に書きました。

テーマを更新した後などは気を付けないとダメですね。