Enable JavaScript in your browser. このウェブサイトはJavaScriptをオンにしてご覧下さい。

ワードプレスの「robots.txt」を書きかえる方法

ワードプレスの「robots.txt」を書きかえる方法

Google Search Console Teamから「CSS および JS ファイルに Googlebot がアクセスできません」という内容のメールが送られてドキッとしてはいないでしょうか。

「何?スパム…?」「えっ?どういうこと…?驚く顔」と驚いたのはぼくだけではないはず。

ウェブマスターツール(今ではSearch Consoleと呼ぶのか…?)からくるお知らせ。

その代表的なのは「スパム」に関連することという思い込みのようなものがありますよね。

ぼくはスパム判定を喰らったこともありませんし、そのようなメールをもらったこともありません。

ただ全てがホワイトかと言われれば、やはり「?」がつく部分もあり、見た瞬間は「スパム判定か?」とドキッとしました。

まずはググること

分からないことはまずググる。

検索エンジンが普及した現代では当たり前のようになっていますよね。

ぼくもまずは何事が起きたのかを調査してみました。

鈴木さんのブログで紹介されてた

ググってすぐ発見できたのが、SEO関連の有名人「Kenichi Suzuki」さんのブログ。

⇒参考サイト「CSSとJSファイルをブロックしているサイトに警告メッセージをGoogleが一斉送信

彼の記事なら信用できるので、まず「手動対策(ペナルティ)ではない」という言葉に一安心。

さらに読み続けることでようやく何が起きたのかが判明しました。

サイト内のクロールに関する問題

そう、今回のメールは簡単に言うと「サイト内のクロールに関する問題」のようです。

グーグルのロボットがサイト内を回り、各ページ内容を読み取り、グーグルのデータベースにインデックスされて初めて検索結果に表示されます。

そのロボットの挙動をサイト側で制御しているのが「robots.txt」というファイル。

つまり「ロボットがクロールすべき箇所に、いけないようにする記述がrobots.txtに書いてあるよ」ということを教えてくれたというわけ。

その結果、メールにも書いてありますが「これらのアセットへのアクセスをブロックすると検索結果における掲載順位が本来よりも低くなる可能性があります」とのこと。

さすがに「検索順位が下がるよ」と言われれば、多くの人が行動に移すでしょう。

グーグルは去年の10月に、これらの技術ガイドラインの更新をしたようで、もっと簡潔に言うと「サイトのcssファイルやJavaScriptファイルもクロールすることで、より正確にサイトを評価でき、より精度の高いランク付けができる」ということですね。

今まではhtmlファイルに記述されてた内容でランク付けを行っていたのを、パソコンやスマホのブラウザを通して見るのと同じことをグーグルができるようになったということでしょうか。

より人間の「目」に近くなったとも解釈できますね。

ワードプレスでの解決方法

相変わらず前置きが長い記事になってしまいましたが、どうやらワードプレスのサイトが多くこのようなメールをもらっているようです。

ちなみにぼくも例にもれず、ワードプレスで作った2サイトで送られてきました。

一つはぼくのエースショップ、一つはこのブログです。

このブログはほとんどお金になりませんが(お金を稼ぐのが目的のブログじゃないんです)、エースのショップは勘弁して!といったところ。

即座に解決方法を探りました。

robots.txtがないぞ…?

とは言え、解決方法はある程度想像できますよね。

つまりは「robots.txt」というファイルに書かれている内容を変更すればいいだけです。

Search Console(言い慣れないですね…放心状態の顔)で調べたところ、ワードプレスを設置すると作成される「wp-includes」というフォルダ内をロボットがクロールできないもよう。

それを制御している記述を削除すればいいわけですね。

と、楽勝ムードでいたのですが、肝心の「robots.txt」というファイルが見当たらない…。

調べてみると必ずルートドメイン直下に置くファイルのようですが、いくら探してもそんなファイルが見つからない。

一応「http://ドメイン/robots.txt」とurl入力欄に入れてみると、それらしき表示が。

でもファイルはない…。

完全に「?」ですよ。

ALL IN ONE SEO PACKでできるか…?

大体この手のファイルの作成は「ALL IN ONE SEO PACK」でできるハズ。

そう考えて「All In One Seo ⇒ Feature Manager」とクリック。

やっぱりあった!「Robots.txt」。

すかさず「Activate」をクリックし、設定するも使い方が分からない…。残念。

でも、どうやら「Disallow: /wp-includes/」という記述が問題だということが判明。

どうにかしてその記述を消せばいいはず。

でも一体Robots.txtはどこにある…?

ワードプレスでは仮想ファイルが自動生成される!

なんと、こんなオチか、というのが本音。

確かに自分で何か変えた記憶もないし。

「じゃあどうすれば仮想ファイルを書きかえることができるの…?」次の疑問はコレです。

もちろんググって解決方法を探します。

はい、見つけました。

⇒参考サイト「robots.txtの書き方と設定方法全手順

このページが参考になります。

で、さっそくrobots.txtを作成してアップ。

再びSearch Consoleでいじってみると、どうやら新しくアップしたrobots.txtが認識されたようです。

さてこれで解決でしょう、おそらく。

ところがまた一つ気になる点が…。

他のワードプレスサイトも同じか…?

他の人は分かりませんが、ぼくはメインのサイトだけをSearch Consoleに登録しているので、他にもショップやブログがけっこうあります。

もちろん登録していないサイトに関してはメールがくるはずもなく、何の音沙汰もなく順位が下落していくという結果が待っているのではないかと。

「登録しておいて良かった」と心から思えた瞬間でした。

でも全部のサイトでいちいちアップするのも面倒だなぁと、持ち前の「面倒くさがり屋」が顔を白い目

robots.txtはたいした内容じゃないので、どんどん書き換えていけばすぐに終わる作業。

でも、そもそも何もしてないのにこのようなことになるということは、根本から見直すべきではないか、こう考えたぼくは、ワードプレスが自動生成するrobots.txtファイルをどこで制御しているのかを調べることに。

つまり「新しくrobots.txtを作成してアップする」ではなく、「Disallow: /wp-includes/」を削除した状態で自動生成されるようにすることはできないのか…ということ。

もちろん方法はググって探します。

はい、見つけました。

⇒参考サイト「WordPressで自動生成されるrobots.txt

このページに分かりやすく書いてあります。

つまりサイトの「/wp-includes/functions.php」をダウンロードして、「$output .= “Disallow: $path/wp-includes/n”;」という一行があれば消してアップ、なければさし当たって問題はなしということで。

これで自動生成されても「Disallow: /wp-includes/」という記述がなくなります。

ただし手間自体はあまり変わってませんね。

どちらかお好きな方でお試しあれ。

※ワードプレスの根幹ファイルをいじる時は、必ずバックアップをとってから行うことをオススメします。

まとめ

Search Consoleからのメールというものは心臓に悪いですね。

ぼくはできるだけホワイトな施策を心掛けておりますが、どこかで勘違いしてる可能性だってあるでしょうし、思わぬ落とし穴があってもおかしくありません。

とりあえずSearch Consoleからのメールには、この方法で解決したはずです。

ワードプレスでサイトやショップを作っているひとは参考にしてください。

もしもドロップシッピングで稼ぐためのブログページトップへ戻る