読者です 読者をやめる 読者になる 読者になる

クリアメモリ

プログラミングやモーショングラフィックス、便利なアプリケーションなど雑多に記録するブログ

【SearchConsole】admin-ajaxがブロックされたリソースになった時の対処

f:id:clrmemory:20170422173921p:plain 

先日、Search Consoleの「ブロックされたリソース」項目を確認していたところ、190件以上のブロックされたリソースが表示されていました。

 

確認してみると「admin-ajax」がブロックされているようなので、対策してみました。

 

 

はじめに

 

ブロックされたリソースとは、サイト内で使っているコードがGoogleから認識できないというもののようです。

 

 

Googleに認識されないと、Googleから見たサイトと自分が見たサイトのレイアウトが変わってしまう可能性があるので、サイトを運営する上で放置できないものだと思います。

 

そこで、ブロックされたリソースを許可することで対応しました。

 

ブロックされたリソース

 

すでにSearch Consoleに登録している方は、Search Console >Google インデックス > ブロックされたリソースを確認してみてください。

 

ブロックされた項目がある場合は以下のように、サイトのURLが表示されていると思います。

 

スクリーンショット 2016-04-28 10.38.18

 

ここに表示されてしまっている場合は、クリックしてみてください。どのような項目がブロックされているのか確認することができます。

 

 

私の場合は、すべて「admin-ajax.php」がブロックされていたので、このブロックを解除することでブロックされたリソースの数を減らすことができるはずです。

 

ではブロックされたコードを許可していきましょう。

 

リソースを許可する

 

ブロックされたリソースに表示されたコードを許可する時は「Search Console」の「robots.txt」という項目を編集します。

 

関係ない箇所を書き換えてしまうと、不具合が出てしまうので編集する際には注意してください。

 

https://clrmemory.com/wordpress/robots-txt-customize/

 

 

こちらの記事で、WordPress上からrobots.txtを編集する方法を紹介しています。

プラグインを使うことになるのですが、robots.txtの編集方法がわからない方は参考にしてみてください。

 

 

私の場合、robots.txtにはこのように記述していました。

 

 

User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/customize.php Allow: /wp-includes/js/

 

 

少し書き換えてあるので、デフォルトの状態と変わっていると思います。

 

 

デフォルト:

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

 

 

この中に「Disallow: /wp-admin/」と書かれていますよね。

Disallowというのは許可しないという意味なので、「wp-admin」を許可しないと「wp-admin/admin-ajax」という配置になっている「admin-ajax」もブロックされてしまいます。

 

 

ですが、wp-admin全体を許可する必要はありません。

そのような時にどのような記述をすれば良いか紹介します。

 

 

以下のように編集してみてください。

 

 

User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Allow: /wp-admin/customize.php Allow: /wp-includes/js/

 

 

すでに保存されているrobots.txtの中に「Allow: /wp-admin/admin-ajax.php」を新たに追加してください。

このようにするだけで、admin-ajax.phpを許可できるようになりました。

 

 

編集が完了したら、ブロックされたリソースを含むページからrobots.txtテスターを選択してください。

 

スクリーンショット 2016-04-28 11.16.25

 

 

robots.txtウィンドウが開かれて、以下のように表示されていればブロックされたリソースの許可ができています。

 

スクリーンショット 2016-04-28 11.19.58

 

あとはブロックされたリソースがなくなれば全て完了です。

 


 

補足:

ブロックされたリソースの対策をrobots.txtに記述した後、すべての記事に対してrobots.txtの送信ボタンを入力する必要はありません。

 

robots.txtの欄に編集した「Allow: /wp-admin/admin-ajax.php」という内容が反映されていれば大丈夫です。

 


 

ブロックされたリソースを確認する

 

ブロックされたリソースの数が全て無くなるまでには時間がかかります。

robots.txtを編集してもすぐにエラーの数がなくなるわけではなく、数日から数週間、もしかしたら数ヶ月かかる可能性があります。

 

 

私の場合も約20日経ちましたが、全てのエラーは無くなってはいません。190件近くあったエラーは現在39件まで減少しています。

 

スクリーンショット 2016-04-28 11.31.12

 

少しずつ数が減っていくと思いますので、気長に待ってみましょう。

 


 

2016/05/23追記:

 

本日確認したところ、2016/05/21にブロックされたリソースの数は無事全てなくなっていました。

 

スクリーンショット 2016-05-23 20.16.01

 

 

このグラフを見ても分かる通り、少しずつ減っていっていますね。

ブロックされたリソースの数が減り始めてから「1ヶ月と12日」かかりましたので、やはり気長に待つしかなさそうです。

 


 

まとめ

 

今回の方法を使うことで、Search Console内のブロックされたリソース対策を行うことができました。

 

admin-ajax以外のコードがブロックされてしまっている場合は、今回の方法だけでは対策出来ないですが、ブロックされてしまわないように定期的にSearch Consoleを確認しましょう。

 

ではまた。