私達のつくったWebサイトには、各検索エンジンのクローラさんが警備員よろしく定期的に巡回してくるので、それによって検索エンジンに適切に載ることができています。しかし彼らは時に幼児のように自由気ままに、時に姑のように重箱の隅をつつくように、巡回します。それに歯止めをかけることのできる技について覚えたことをメモしておこうと思います。

META Robots タグ とは?

<meta name="robots">

👆これ👆

真面目に言うとHTMLの<head>内に配置しそのページの情報を表現する<meta>タグの用法の一つです。検索エンジンのクローラの動作を制御することができます。サイトをよりよく、より自分の意図通りに検索結果に表示させるため活用していきましょう。

どんなことができるの?

SEO対策として、サイト内に適切なページを用意したり、リンクを整備したり、ということはよくされますよね。そのときに「このリンクは残しておきたいけど、SEOの評価には使われたくない」といったような特殊な指示をクローラにすることができます。ほかにも

  • クローラの指定をする(特定のクローラでのみ評価する)
  • 検索結果に対象ページを表示させないようにする
  • Googleにページをキャッシュさせないようにする
  • 翻訳へのリンクを表示させないようにする

などいろいろな指示が出せます(ここに挙げたものは具体例です、これで全てではありません)。しかもSEO対策としてだけでなくいろいろな場面で活用できるようです。

お作法

<meta name="robots" content="xxx">

name 属性

どのクローラへの制御か、を表現します。

  • robots = 全ての検索エンジンのクローラを対象
  • googlebot = Googleのクローラを対象

content 属性

クローラへの指示内容になります。複数指定するときはカンマで区切ります。

ちなみに<meta>タグ内は大文字小文字の違いは認識されません。

実例で覚える使い方

検索結果にページを表示しないようにする

<meta name="robots" content="noindex">

会員限定ページのように「特定の人はアクセスできるが、検索エンジンの検索結果には表示したくない」というページで使います。クローラへの制御内容は「このページをクローラしてほしいけどインデックスには載せないで」という感じです。

ページ内のリンクをPageRank評価対象から外す

<meta name=”robots” content=”nofollow”>

「これらのリンクはスパムリンクです!ご注意を!」っていうありがた〜い記事を書いたのに、そこで紹介してるスパムなリンク先をクローラに巡回されて、「この記事はなんて悪質なリンクをはってるんだ!PageRank下げるぞ!👊😠」ってなったら悲しすぎる…。 そんなときにこれをつかうと、「このページ内のリンクはクローラの巡回をやめてね」と指示できます。

ページ全体ではなくリンク単位で指定することもでき、その場合は<a rel="nofollow"><a>タグ内に記載します。誰にどんなリンクを貼られるか分からないコメント欄などで力を発揮します。

検索結果に表示させず、評価対象からも外す

<meta name="robots" content="none">

いつ使うんだろう…。

翻訳のリンクを表示させない

<meta name="robots" content="notranslate">

翻訳しにくいコンテンツを載せているページや、ある特定の言語で読ませたいページなどに使いましょう。

Google画像検索結果に画像を表示させない

<meta name="robots" content="noimageindex">

個人のイラストを掲載している人で、画像を保存されたくないって人たまにいます。自分のサイト内の制御はかけられても画像検索までは…と思っていたアナタへの朗報ですね。

ページをキャッシュさせない

<meta name=”robots” content=”noarchive”>

ECサイトの会員制ページや、情報が更新され得るニュースページなどで利用されています。

おわり

SEO対策についても然りですが、こういった情報は鮮度が命です。古い仕様を参考にしていると「実はその仕様はもうなくなった」なんてことになりかねないので、この記事を参考にする場合はその点にご注意ください。この記事は2016/10/27に書いていてそれ以降の情報更新はしていません。