Wordpressサイトで、Googleサーチコンソールのカバレッジの除外という項目に“ページにリダイレクトがあります”というページが出る原因と対処法です。
ページにリダイレクトがあると検索エンジンのインデックス登録から除外されるわけですが、Wordpressではページにリダイレクトなんて設定した覚えがなくてもこの除外ページが発生します。
こうなる主な原因はWordpressの自動補完リダイレクトという機能にあります。
ページの正しいURL(正規URL)が除外されていなければ問題はありません。
この記事の目次
WordPress:サーチコンソールでページにリダイレクトがありますが出る原因と対処法
Wordpressでサイトを運営していると、Googleサーチコンソールのカバレッジ画面で“ページにリダイレクトがあります”という内容でページがインデックスから除外されているのを確認する日がやって来るはずです。
外部リンク
【Googleサーチコンソール】
Google Webmaster Tools - Google Search Console
サーチコンソールにログイン後、該当のプロパティを選択してからカバレッジの除外に進み、ページにリダイレクトがありますを開いた画面ですね。
この画面は、サイト内のページにリダイレクトが設定してあるため、検索エンジンのインデックスから除外されているページを確認する画面ですが、Wordpressを使っているとこの除外ページが増えます。
.htaccessやプラグインを使って手動でページにリダイレクトを設定しているなら分かるのですが、自分でリダイレクトの設定を一切していなくても出ます。
そして除外ページのURLを確認すると公開ページの正しいURL(正規URL)とは少しだけ異なるURLのページだという事が分かるかと思います。
これって初めて見ると謎の塊ではないですか??
- なぜ本来の投稿ページのURLではない別のURLにリダイレクトがあるのか?
- リダイレクトを設定した覚えがないのに勝手に除外されている!原因は?
というのが、なかなか調べにくいと思うんです。
実際、僕もはじめは意味が分からなかった記憶があります。
ということでこの原因と解決策をご案内できればと思いこの記事を書きました。
ページにリダイレクトがありますが出る原因はWordPressの自動補完リダイレクト機能
さて本題です。
Wordpressサイトでサーチコンソール“ページにリダイレクトがあります”が出現する原因は「Wordpressの自動補完リダイレクト機能」というものにあります。
自動補完リダイレクトというのは、存在しないURL(404)へのアクセスがあった時に、存在する既存のページの中から“できるだけ近いURL”を選んで補完し、自動的にそのページにリダイレクトするという機能です。
本来なら404 Not Foundが出るページであっても、URLが近いページがあればそちらにリダイレクトして開くという、Wordpressの気の利く機能と言えます。
そしてこのURLの補完処理には以下の2種類の方法があります。
- アクセスされるURLの前方部分の文字列に一致するURLを探して補完する
- 過去のURL(スラッグ)情報を元に補完する
上記の2にあたるリダイレクトを停止するのが今回の対処方法です。
ややこしいので順番に確認します。
アクセスされるURLの前方部分の文字列に一致するURLを探して補完する
上記の1はURLにミスタイプがあった時などに役立つ補完方法です。
【例】
https://example.com/wordpress/
にアクセスしようと思ったところ
https://example.com/wordpres/
と最後の“s”が抜けてしまった状態でアクセスした。結果:wordpresが前方一致するので正しいURLにリダイレクトされる。
といった具合です。
もしスラッグ部分が「word」だけだった場合でも前方一致となるので「wordpress」というスラッグのページが開きます。この補完方法は今回は関係ありません。
過去のURL(スラッグ)情報を元に補完する
そして2がスラッグ(パーマリンク)を変更した時に役立つ補完方法です。
この補完方法がサーチコンソールで“ページにリダイレクトがあります”という内容で除外ページが出てしまう原因です。
【例】
・過去のスラッグ設定:https://example.com/wp/
・現在のスラッグ設定:https://example.com/wordpress/
という環境でhttps://example.com/wp/でアクセスした。結果:過去のスラッグ履歴を元に現在の正しいURLにリダイレクトされる。
といった具合です。
ページURLを構成するスラッグを「wpからwordpress」に変更していると、元のwpというスラッグのページに自動でリダイレクトが設定されるわけです。
結果“「https://example.com/wp/」というページにリダイレクトがあります”という状態になり、サーチコンソールでインデックス除外にこのURLが出るのです。
対処法:過去スラッグからの自動補完リダイレクトを停止する
Wordpressでは投稿のスラッグ(URL)を変更した場合、過去のスラッグを設定していたページにリダイレクトが自動で設定されます。これは仕様です。
が、この機能を停止すればサーチコンソールで「ページにリダイレクトがあります」ではなく「見つかりませんでした(404)」という内容で認識されるようになります。
過去に設定していたスラッグ情報はWordpressのデータベース内に保管されており、これを直接削除するという方法でも良いのですが、functions.phpにコードを追記するだけで簡単に自動補完リダイレクトの機能を停止することが可能です。
今回はコチラの方法を詳しくご紹介します。
functons.phpが分からない方は以下の関連記事(↓)も参考にどうぞ。
関連記事
【functons.phpについてはコチラ】
WordPressのfunctions.phpとは?場所と編集方法、コードの書き方を初心者向けに解説します。
functions.phpにコードを追記する
自動補完リダイレクト機能を制限するコードですが、Wordpress5.5以降はより簡単にできるようなフィルターが追加されていますのでこれを使いましょう。
以下のコードを子テーマなどのfunctions.phpに追記すればOKです。
//旧スラッグからの自動補完リダイレクトを停止 remove_action( 'template_redirect', 'wp_old_slug_redirect' );
これで旧スラッグ(パーマリンク)URLからの自動リダイレクトが停止できます。
先述した2のリダイレクト方法を停止するわけですね。
なお1のリダイレクト方法である前方一致によるリダイレクトは別のコードで停止できますが、これはサーチコンソールの“ページにリダイレクトがあります”とは関係ないので今回は割愛します。
1のコードを含む詳細については関連記事(↓)にさらに詳しく書いています。
今回の記事の内容と少しかぶっていますが、より細かく解説しています。
サーチコンソールでステータスを確認する
functions.phpにコードを追記したら早速動作確認しましょう!
「Googleサーチコンソール>カバレッジ>除外>ページにリダイレクトがあります>URL横の虫眼鏡マーク」
に進み、リダイレクトが発生していたページを再度検査します。
検査画面内の「公開URLをテスト」ボタンを押しましょう。
自動補完リダイレクトの働きによって「ページにリダイレクトがあります」になっていたページが、リダイレクトを停止したことで「見つかりませんでした(404)」に変わっていることが確認できればOK!
これで徐々にサーチコンソール内の“ページにリダイレクトがあります”というページが減っていくはずです。クローラーの巡回頻度にもよりますが、数カ月は様子見する感じになるでしょうか…
URLにカテゴリー名を入れている場合は要注意
後日、ページにリダイレクトがありますがまた増えて気が付いたので追記です。
ページURLにカテゴリー名を入れている場合、つまりWordPressのパーマリンク設定で「%category%」を使っているなら、過去スラッグからの自動補完リダイレクトを停止するだけでは不十分です。
WordPressにはカテゴリー部分にも自動リダイレクトが発生するようです。
投稿を公開したあとでカテゴリーを変更してURLを変更した場合、旧スラッグのURLにアクセスすると新スラッグのページに自動でリダイレクトするという感じです。
とにかく投稿にカテゴリー名を含む場合は“ページにリダイレクトがあります”が量産される可能性があります。
詳しくは関連記事(↓)を作成したので、こちらをご確認いただければと思います。
自動補完リダイレクトを停止する時の注意点
ここまでの内容で「旧スラッグ(旧パーマリンク)からの自動補完リダイレクト」を停止すれば、サーチコンソールの除外ページは減ります。
が、旧スラッグからの自動リダイレクトが停止するので古いパーマリンクで被リンクを受けていた場合はアクセス数に影響してしまうことになります。なので被リンクがあるページには.htaccessなどを使って手動でリダイレクトを設定するのが良いです。
被リンク以外のSEOについては、個人的に影響は少ないと思います。
今回リダイレクトを外して404にしたページは、正規URL(インデックスしてほしいURL)ではないからです。そもそもWordpressじゃなかったらこのページは404になるのが普通ですからね…
僕は手動でリダイレクト設定したページのみを“ページにリダイレクトがあります”のところに表示したかったのでこの機能は停止しました。
このような特別な理由がないのであれば、自動補完リダイレクトは放置しておいた方が安心と言えば安心かもしれません。
まとめ
以上、Wordpressサイトでサーチコンソールに“ページにリダイレクトがあります”という除外ページが増えてしまう原因とその対処法でした。
自動補完リダイレクトは存在しないURLに勝手にリダイレクトを設定して、自動推測した公開ページを開く機能なので、結構お節介な機能なのかもしれないですね…
自分で設定していないのに、リダイレクトがあるページが増え続けるのがイヤだったので今回対処しました。301リダイレクトでもなく、http→httpsのリダイレクトでもないと考えるとやっぱり気持ち悪いよね…
細かい内容ですが、同士の方は是非どうぞ!ではではこのへんで・w・





