本題に入る前に、noindex robots metaタグとnofollow robots metaタグについて簡単に確認しておきます。
- noindex robots metaタグ: このタグを記述したページを検索結果に表示させないようにする目的で使う。
- nofollow robots metaタグ: このタグを記述したページに存在するリンクを検索エンジンがたどることを禁止する目的で使う。
禁止を意味する“no”が付かない、index robots metaタグとfollow robots metaタグというのも利用することができて、それぞれ「インデックスを許可する」、「リンクをたどるのを許可する」という目的で使います。
さて本題です。
<meta name="robots" content="noindex,follow" />
上のタグは、インデックス(検索結果での表示)を拒否するがリンクをたどることを許可する、という命令になります。
いったいどんな場面で使うのでしょうか?
GoogleのMatt Cutts(マット・カッツ)氏が、ウェブマスター向けQ&Aビデオで解説しています。
たとえばサイトマップのページで使える。
サイトマップページにあるのがリンクばかりで、Googleにとってスパムっぽく見えるのが心配ならnoindex robots metaタグを記述しておけばその心配はない。
だけど、follow robots metaタグをあわせて記述しておけば検索エンジンはリンク先ページをたどることができる。
ここで言うサイトマップというのはXMLサイトマップではなくて、サイト内のコンテンツを案内するHTMLサイトマップのことです。
本題からそれますが、HTMLサイトマップは訪問者に対しても検索エンジン対しても役に立ちます。
『HTMLサイトマップは今でもユーザーにとって重要なのか?』
HTMLサイトマップも設置したほうがいい。HTMLサイトマップはユーザーだけでなく、PageRankをサイト中に配分できるから検索エンジンにとっても有効だ。
それに、HTMLサイトマップがあれば、すべてのページにアクセスできることを保証できる。ページ数が多い場合は何千本ものリンクを1つのページに置くことはできないから、アルファベット順や時系列で分割するといい。
ユーザーにとっては間違いなくHTMLサイトマップは役に立つ。僕も、ブログのサイドバーに月ごとにまとめたリンクを設置して、ユーザーが過去の記事を見つけやすいようにしている。Googlebotもこのリンクをたどって個々の記事ページにアクセスできるんだ。
グーグルウェブマスターツールの管理画面からXMLサイトマップを送信するのと併せて、HTMLサイトマップを設置することを絶対に推奨するよ。
便利で使いやすいからユーザビリティを高めるし、検索結果も良くなるかもしれない。
本題に戻ります。
「HTMLサイトマップのページのコンテンツがリンクばかりでスパム扱いされたら嫌だな、でもリンク先ページにはアクセスさせてクロール・インデックスの助けにしたい」、たとえばこんな状況で使うことがあるだろうとMatt Cutts氏はアドバイスしています。
リンクをたどるのを許可するということは、PageRankやアンカーテキストを渡すという意味もありますね。
通常、検索エンジンはインデックスするしリンクをたどるので、あえて明示的にindex robots metaタグやfollow robots metaタグを記述する必要はありません。
<meta name="robots" content="index,follow" />
上の記述は、「書いてはダメ」とまでは言いませんが不要です。
なくても検索エンジンはインデックスしようとするし、リンク先をたどろうとします。
コードを書くだけ一手間増えて、ファイルサイズも増えるだけです。
それなら、
<meta name="robots" content="noindex,follow" />
このエントリで問題になっている上の記述の“follow”も不要で、下だけで十分に思えます。
<meta name="robots" content="noindex" />
確かに理論的にはそのとおり(noindexだけでインデックスを拒否させリンクをたどらせる)で、そのように働くのですが、必ずしもそうとは限らないようなのです。
That’s what is supposed to happen and it did happen, historically. Recently some people have been running new tests that seem to show it’s not always true.
したがって、noindex robots metaタグでインデックスを拒否するけれどリンクはたどらせるという場合には、follow robots metaタグをあえて明示的に付けておけば安心ということになりそうです。
リンクばかりのサイトマップページのように
「インデックスは拒否するけど、リンクはたどらせる」、
もしこんな状況が生まれたら、
<meta name="robots" content="noindex,follow" />
このタグを使ってみましょう。
なおnoindex robots metaタグとnofollow robots metaタグについては、以前に書いた以下のエントリで復習しておくことをおすすめします。