
Googleサーチコンソールの「ページ」⇒「クロール済みインデックス未登録」で「~/feed/」といったURLが非常に多く表示されます。
こうなると本当に確認したい(記事のURLのありなし)の情報が分かりづらくなりますよね。
ということで、今回はサーチコンソールで「~/feed」というURLが表示されないようにする方法をご紹介です。
実際の表示の確認
実際どう見えるか、
「サーチコンソール」⇒「ページ」⇒「ページのインデックス未登録」で見ると、例えば以下のように見えます。

「ページのインデックス未登録」は、Googleの検索エンジンが「そのURLを確認したけど、インデックスはしないよ」というもの。
つまり、このURLは検索結果には表示しないからね、となりますが、そもそもこの「feed」(フィード)はRSSフィードという、ブログなどの更新情報を自動で取得するために使われるもの。
人間が直接その中を見て理解するというものではなく、検索結果に出て来る必要もないことから、Googleが言う通り「このURLは検索結果に出さないからね(インデックスに登録しない)」となってても全く問題ありません。
全く問題なければ、表示されないようにした方が、その他重要な情報(記事のURL)が見やすくなり、だから非表示にしたい、というところです。
feed URLをインデックスさせないための3つの方法
サーチコンソールで、feed のURLを表示させないほう先にポイントをまとめておくと、対策には次の3つがあります。
- 1)プラグインを使う:
プラグインを使って、フィード自体の出力を止める - 2)専用コードを使う:
functions.php にコードを追加して、インデックスしないよう検索エンジンに伝える - 3)robots.txtを使う:
robots.txで、検索エンジンがフィードにアクセスしてくるのを止める
どれがいいかは目的によって変わってきます。
1)プラグインを使う
「そもそもフィードなんて使ってない」という場合には、プラグインを使うのが一番楽。
- WordPressのプラグイン「Disable Feeds WP」が使える
- 使い方は、管理画面から有効化するだけ。
- フィードページにアクセスされたとき、自動的にトップページなどにリダイレクトされる
このプラグインでは、設定も基本不要で、気軽に使えるのがメリット。
ただ、feedにはアクセスできなくなるので、RSSリーダーでは使えなくなります。
RSSリーダーが使われるのは、日々更新されるニュースサイトぐらいになると思いますが、「こうしたシーンで使われることを考えている」という場合には、このプラグインではなく、次の「2)専用コードを使う」を見てみてください。
参考までに、このプラグインの設定画面は以下になってます。
(日本語翻訳をしてます。以下初期状態)

初期状態では「フィード要求をホームページにリダイレクトする」(トップページへ自動的にジャンプする)になっていて、つまり、間違えてフィードのURLでアクセスしても、TOPページにリダイレクトされるので、少なくともコンテンツが表示される、という形。
もう1つの「404ページで~」というのは、
検索エンジンなどに「このページは存在しない」と知らせるもの。
つまりは、このプラグインを使うと「フィードは完全に無効化される」(アクセスして中を見ることができない)ってことになりますね。
上の2つの選択肢では、
初期状態のまま(TOPページが表示される)にしておけば良さそうです。
※)2つ目は、しっかり「このページは存在しない」と表示したい時に使いますが、そこまでしなくてもって感じです。
2)専用コードを使う
上のプラグインを使う場合、
フィードは無いもとして扱われるため、
RSSリーダーも読めなくなる、ということはあります。
現在、フィードが使われると想定しているサイトは限られてくると思いますが、「RSSリーダーには使える」「でもインデックスはさせたくない」(サーチコンソールからの表示を消したいだけ)という場合には、以下の専用コードを使えばOK。
1 2 3 4 5 | add_action('template_redirect', function() { if ( is_feed() && headers_sent() === false ) { header('X-Robots-Tag: noindex, follow', true); } }); |
このコードの内容は、簡単に言えば以下。
- フィードにアクセスされたら、HTTPヘッダー(X-Robots-Tag: noindex)というものを返す
- この情報により原作エンジンのクローラー(巡回ロボット)に「インデックスはしないでね」ということを伝える
- フィード自体は普通に読めるので、RSSリーダー等も使える
コードをどうやって追加するかは、下方を参照してみてください。
3)robots.txtを使う
3つ目の手段としては「robots.txt」を使うこと。
「robots.txt」を使うことで、Googleなどの検索エンジンのクローラー(巡回ロボット)に「feedのURLにアクセスしないで」と伝える方法もあります。
※)robots.txt:
検索エンジンにのクローラーに対して
「このページは見ないでね」などアクセスの制御をするファイル。
1 2 | User-agent: * Disallow: /feed/ |
このコードを robots.txtに書けばよいですが、
これはあくまで“クロールを防ぐ”だけ。
すでにインデックスされている(Googleに知られている)URLには効果がないので、サーチコンソール上からフィードのURLが消えるとは限りません。
使うとしても補助的な役割になりそうですね。
functions.phpにコードを追加するには
それでは、上で見た「2)専用コードを使う」の具体的なやり方を見ておきましょう。
functions.phpへの貼り付け手順
先ほど見た以下のコードを、
WordPressテーマ内の「functions.php」に貼り付けます。
1 2 3 4 5 | add_action('template_redirect', function() { if ( is_feed() && headers_sent() === false ) { header('X-Robots-Tag: noindex, follow', true); } }); |
このコードは、フィードのURLにアクセスされたときに限り、
「インデックスはしないでね」「でも見ても良いし、中にあるリンクは辿ってね」という意味合いの情報を検索エンジンに返す、
ということをしてます。
「サーチコンソールから feed のURLをなくしたい」という場合に、一番良い対応だと思いますが、「functions.php」に追記するというのが、なにか怖い、などあれば、1つ目のプラグインを使うのが良いと思います。
functions.php への追記手順は以下の通り。(一瞬で終わると思います)

- ①「外観」⇒ ②「テーマファイルエディター」を選択
↓↓↓↓↓↓
以下、Cocoonの例ですが、他のテーマでも基本同じです。

- ①:「functions.php」(Theme Functions)を選ぶ
- ②:functions.phpが表示されるので、一番下などに、上で見たコードを貼り付ける。
- ③:最後に「ファイル更新」をクリック!
以上で設定完了です。一瞬でできますね。
追加するコードの意味
貼り付けた内容は何をしているか、以下、参考までに。
1 | add_action('template_redirect', function() { |
→ ページの表示が始まる直前のタイミングで、
このコードが実行されるように、WordPressに指示してます。
1 | if ( is_feed() && headers_sent() === false ) { |
→ 表示されようとしているページが「フィード」であり、最初の情報(ヘッダー)がまだ送られていない場合に、次の処理へ進むようになってます。
1 | header('X-Robots-Tag: noindex, follow', true); |
→ 「このページはインデックスしないけど、リンク先はたどってもOK」と検索エンジンに伝えます。
noindexが送られているかの確認
設定どおりの動作になるかは、以下のように確認できます。
開発者ツールというのを使いますが、
是非チャレンジしてみてください。以下ブラウザはGoogleクロームの例になります。
手順1)feedのURLにアクセス
Chrome(ブラウザ)で、
サーチコンソールに表示されている「feed」URLのいずれかにアクセスします。
↓↓↓↓↓↓

- ① サーチコンソールで表示されている「feed」のURLのいずれかをChrome(ブラウザ)でアクセス(例:example.com/adsense-how-to/feed )
- ② feedのページが表示されたら、その上で右クリックでメニューを表示
- ③ メニューの下方にある「検証」をクリック
⇒ 開発者ツールが開きます
手順2)feedページをリロード
開発者ツールが開いたら、feedのページを一度リロード(再表示)します。
Googleクロームなら、左上の「グルっと矢印」をクリックでOK

手順3)開発者ツールで確認
リロードしたら、改めて開発者ツールで確認します。
下方の動画のように、以下の順で確認できます。
- 1)「ネットワーク」を選択
- 2)「feed」を選択
- 3)「ヘッダー」の中を確認
「x-robots-tag」で「noindex, follow」と表示されていれば、貼り付けたコードも正しく動作していると分かります。
それでもSearch Consoleに表示される?
コードを追加しても、すぐにサーチコンソールの「クロール済み – インデックス未登録」から消えるわけではなく、検索エンジンのクローラーが来るのを待つ必要があります。
タイミングが良ければ数日とか数週間、場合よってはもっとかかる場合もあると思いますので(ここはグーグルのみぞ知るところ)、気長に様子見していきましょう。
feedのURLをどうしてもすぐ消したい場合には、サーチコンソールの「削除ツール」を使う、というのもありますが、正しい使い方ではないので、やはり気長に待ってみるのが良いと思います。
まとめ
最後に、今回の対応策を整理しておきます。
- 1)RSSそのものが不要 :プラグインで無効化
- 2)RSSは使いたいがインデックスだけ止めたい:functions.phpにコード追加
- 3)クローラー自体を避けたい:robots.txtも併用する
3つの手段を見てみましたが、1にしても2にしても、サーチコンソールで今表示されているフィードのURL(…/feed/)は、少しずつ消えていくものです。
設定後は少しのんびりと見ていきましょう。
コメント