WordPressで検索画面をnoindexにする方法という記事を見ていました。
「WordPress Search Result Attack(上記ブログ著者銘名)」としてWordPressのサイト内検索結果画面を利用され、Google等の検索サイトで悪用されてしまう、という内容です。
詳しくはリンク先の記事を見て欲しいのですが、対策としてWordPressのサイト内検索結果画面をnoindexにしてGooglebotにインデックスされない様にする設定を推奨されています。

さて、僕はどうしているかというと、下記の様にhead内にコードを記述し、404ページ、サイト内検索結果ページ、年月日アーカイブページはnoindexにし、記事ページ、個別ページ、カテゴリページ、タグページはindexする様に設定しています。
head内に下記のソースを記述します。

<?php 
if( $paged >= 2 || $page >= 2 ) {
  $robots="noarchive, follow, noindex";
}
else if(is_single()||is_page()||is_category()||is_tag()||is_post_type_archive()) {
  $robots="archive, follow, index";
}
else if(is_archive()||is_search()||is_404()) {
  $robots="noarchive, follow, noindex";
}
?>
<meta name="robots" content="<?php echo $robots; ?>" />

これで、Googlebotにはサイト内検索結果ページと404ページに加えて、年月日アーカイブページはnoindexと認識されます。
逆に、記事ページ、個別ページ、カテゴリページ、タグページはindexします。
なお、カテゴリページやタグページ等、ページネーションがある場合は、2ページ目以降はnoindexとなります。

実はこれ、SEOを考慮してかなり昔から設定はしているのですが、WordPressのサイト内検索結果ページの悪用対策になっているとは気づきませんでした(笑)

インディックスはコントロールすべき物なのです。
不要な物をインディックスする事が無いように検索エンジンを使ってくれたらと思います。

とある様に、設定しておいて損は無いと思います。
ただ、間違えると悲惨な事になるので、気を付けて下さい(笑)


コメントを投稿する

* が付いている項目は必須です。