WordPressの仮想robots.txtとは?仕組みと編集方法を解説

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」の存在を理解したうえで、自分のサイトに最適な管理方法を選びましょう。