WordPress でアフィリエイトを始めて早1か月。日々精進しております。
今日は、robots.txt と All in One SEO Pack と題しましてお話をします。
robots.txt は誰が作るか
WordPress がアクセスがあった時に動的に作成してくれます。これがデフォルトの動きです。
でも、自分のサイトを確認してみると、ドキュメントルート直下に、robots.txt があるではありませんか。おまけに、Google Search Console の robots.txt テスター でテストしてみるとエラーがあります。その時表示されたコードが次のものです。
Sitemap:ロ # global User-agent: * Disallow: /xmlrpc.php
1 行目がエラーだと言われました。確かに、Sitemap: と言いながら、何も書いてないんですからエラーです。
これは誰が作ったんだ??? 思い起してみると、All in One SEO Pack に Robots.txt と言う機能があって、それを設定した記憶があります。どうやらこいつです。こいつが、勝手にドキュメントルートに robots.txt を作りやがったのです。それも中と半端なやつを。
All in One SEO Pack の矛盾
All in One SEO Pack では、Robots.txt のほかに XMLサイトマップと言う機能もあります。その中で、「圧縮版サイトマップを構築する」にチェックを付けているならば、サイトマップは、robots.txt.gz じゃなきゃだめでしょ! なのに、robots.txt を作っているのです。バグなのか、私の未熟さなのかは不明ですが、とにかくおかしい、矛盾しています。
robots.txt を正す
やることは、2つです。
All in One SEO Pack の Robots.txt を停止
ダッシュボードから All in One SEO Pack の機能管理と進み、その中の Robots.txt の Deactive ボタンをクリックし、停止します。
robots.txt ファイルを消す
これだけでは、出来上がっている roborts.txt は消えません。ssh などでサーバにはいって、ドキュメントルート直下の roborts.txt を消します。
これで対処は完了しました。
robots.txt の確認
対処が完了したら確認です。まずは、ブラウザーから robots.txt にアクセスしてみましょう。
http(s):/xxx.yyy.xxx/robots.txt にアクセスします。
すると、こんな画面が出ると思います。
User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Sitemap: http(s):/xxx.yyy.xxx/sitemap.xml.gz
5行目のサイトマップも正しく圧縮ファイルのURLで出ていますね。OKです。合格。
これだけでは、“自己満足” で終わってしまうので、ここは google先生に採点してもらいましょう。検索するわけではないです。google Search Console にアクセスして、クロール → robots.txt テスター と辿ります。
その画面で、「公開済みの robots.txt を表示する」をクリックします。そうすると、先ほどの “自己満足” のときと同じ内容が表示されます。これで、google からも同じ内容が見えているということになります。次に、送信ボタンをクリックします。そうすると、このような画面になります。
この中の「3Google に更新をリクエスト」の送信をクリックします。そうすっると元の画面に戻ります。
最新バージョンが更新されて、内容も “自己満足” と同じになっていて、エラーも警告も0件であれば合格です。
いかがでしたでしょうか。これで、robots.txt が正しくなりました。