WordPressには、実際のファイルが存在しない「仮想robots.txt」という仕組みがあります。SEOやサイト管理に直結する重要なポイントなので、仕組みから編集方法まで詳しく解説します。
仮想robots.txtとは
通常のWebサイトでは、サーバーのルートディレクトリに「robots.txt」というファイルを設置して検索エンジンにクロールルールを伝えます。
しかしWordPressの場合、サーバー上に実際のファイルがなくても /robots.txt
にアクセスすると、WordPressが内部処理でその場で内容を生成して返します。
これは do_robots()
関数による仕組みで、いわゆる「仮想robots.txt」と呼ばれます。
仮想robots.txtの編集方法
WordPressでは「do_robots」アクションフックを使うことで、仮想robots.txtに自由に記述を追加できます。
add_action('do_robots', function() {
echo "Disallow: /sample-directory/\n";
});
このように書けば /sample-directory/
へのクロールを禁止できます。
ただし、毎回 functions.php
にコードを追記するのは管理が煩雑なため、実務では専用のプラグインで制御されることが多いです。
プラグインによる利用例
代表的な例として「XML Sitemap Generator for WordPress」があります。
このプラグインを有効化すると、仮想robots.txtに以下のような記述が自動で追加されます。
Sitemap: http://example.com/sitemap.xml.gz
ただし注意点として、物理的に robots.txt
ファイルをサーバーに置いてしまうと、そちらが必ず優先され、プラグインによる追記は反映されません。
実際のrobots.txtとの関係
- 仮想robots.txt … WordPressが自動生成するもの
- 実ファイルrobots.txt … サーバーに設置した通常のテキストファイル
両者がある場合、必ず「実ファイル」が優先されます。
そのため、確実にクロール制御を行いたい場合は、FTPで robots.txt
をルートディレクトリにアップロードして管理するのが最も安全です。
まとめ
- WordPressには標準で仮想robots.txtが用意されている
- 編集は
do_robots
フックで可能だが、プラグインを使うのが一般的 - 実ファイルを設置すればそちらが優先される
SEOやクローラビリティを意識するなら、まずは「仮想robots.txt」の存在を理解したうえで、自分のサイトに最適な管理方法を選びましょう。