techronicle テクロニクル

Webサイト作成に関する情報提供サイトです。WordPress,HTML+CSSなど。

WordPressとrobots.txt

2013/02/22 WordPress

robots.txtは、サイト内のインデックスして欲しくないファイルやディレクトリの存在をクローラーに伝えるための手段です。

ドメイントップにだけ配置することができます。それ以外のディレクトリトップには置けません。

○http://homepage.com/robots.txt
×http://homepage.com/site1/robots.txt

robots.txtの基本書式

User-agent: ロボットの種類
Disallow: ブロックするURL

これがrobots.txtの基本エントリです。ブロックするURLは複数続けて指定できます。

書式例

すべての検索エンジンのクロールをサイト全体でブロックする

User-agent: *
Disallow: /

Googleのクロールを「folder2」以下でブロックする

User-Agent: Googlebot
Disallow: /folder2/

ブロックするURLの書き方

サイト全体
Disallow: /

ディレクトリ「directory」とそのすべてのコンテンツ
Disallow: /directory/

ページ「page.html」
Disallow: /page.html

サイト内の拡張子がjpgのファイル(画像)だけ
Disallow: /*.jpg$

WordPressのrobots.txt

WordPressの場合は、デフォルトで以下の内容のrobots.txtが配置されます。
表示に関係ないディレクトリがまるごとブロックされています。

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/

WordPressの表示設定で、「検索エンジンがサイトをインデックスできないように」した場合は、以下の様に書き換えられます。

User-agent: *
Disallow: /

なお、上記は、WordPressが仮想的に配置しているrobots.txtで、実際のrobots.txtファイルをアップロードした場合は、そちらが優先されます。

メタタグ

通常、robots.txtが使えない場合は、メタタグを使います。

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

noindex:このページのインデックスをブロックします
nofollow:このページ内のリンクを辿ることを拒否します

WordPressでは、表示設定で、「検索エンジンがサイトをインデックスできないように」した場合は、このメタタグもヘッダ内に書き込まれます。

ディレクトリ型でマルチサイト化した場合の子サイトにはrobots.txtが配置されませんが、上記で一応ブロックはできていることになります。