WordPressのカテゴリ変更で自動リダイレクトされる仕組みを調べてみた

サイト運用中に「カテゴリを変更したらURLが変わってしまうが、リダイレクトは大丈夫か?」という疑問が生じました。実際に調査した過程をまとめます。

背景:未分類カテゴリのまま公開してしまった記事があった

Google Search Consoleのデータを確認したところ、example.com/media/other/ 配下のURLが複数インデックスされていることが判明しました。これらは本来適切なカテゴリに分類されるべき記事が、誤って「未分類(other)」のまま公開されたものでした。

対応として、各記事を正しいカテゴリに移動する作業が発生しました。カテゴリを変更するとURLが変わるため、当初は手動でのリダイレクト設定が必要と考えていました。

WordPressでリダイレクトを設定する方法(当初の想定)

調査した結果、WordPressでリダイレクトを設定する方法は主に3つあります。

方法難易度リスク
Redirectionプラグイン
All in One SEO(Pro版)
.htaccess直接編集

初心者には Redirectionプラグイン が最も手軽でおすすめです。WordPressの管理画面から旧URLと新URLを入力するだけで301リダイレクトを設定できます。

実際にリダイレクトされているか確認する方法

リダイレクトが正しく機能しているか確認するには、ブラウザの開発者ツールを使います。

  1. 確認したい旧URLをブラウザで開く前に、先に F12キー を押して開発者ツールを開く
  2. 「Network」タブ をクリック
  3. その状態でURLを入力してEnterキーを押す(ページ読み込みを記録するため、先にF12を開く必要があります)
  4. 一番上のリクエスト行をクリックし、「Status Code」 を確認する

ステータスコードの意味は以下の通りです。

ステータスコード意味SEEへの影響
301恒久的リダイレクトSEO評価が引き継がれる ✅
302一時的リダイレクトSEO評価が引き継がれない ⚠️
200リダイレクトなし旧URLがそのまま生きている
404ページが存在しない評価が消える ❌

※ すでにリダイレクトされて新URLで開いた後にF12を押しても記録は残っていないため、必ずページを開く前に開発者ツールを起動してください。

確認結果:WordPressが自動で301リダイレクトしていた

実際に旧URLのステータスコードを確認したところ、以下の結果が得られました。

ステータスコード: 301 Moved Permanently
リダイレクト先: https://example.com/media/新カテゴリ/記事ID/
x-redirect-by: WordPress

注目すべきは x-redirect-by: WordPress というレスポンスヘッダーです。これはWordPress本体がリダイレクトを処理したことを示しています。

WordPressに自動リダイレクト機能は本当にあるのか?

「WordPressが自動でリダイレクトしてくれる」というのは本当なのか、調査しました。

結論:本当にあります。

WordPressのコアには、投稿やページのスラッグ(URL)を変更した際に自動的にcanonicalリダイレクトを処理する機能が標準で組み込まれています。具体的には以下のケースが対象です。

  • 投稿・固定ページのスラッグ変更
  • カテゴリの変更によるURL変更
  • 末尾スラッシュの正規化

WordPressはこれらを wp_redirect() という内部関数で処理しており、その際にレスポンスヘッダーへ x-redirect-by: WordPress を付与します。プラグインがリダイレクトを処理した場合は、そのプラグイン名(例:「Redirection」「Yoast SEO」など)がヘッダーに表示されます。

まとめ

カテゴリ変更に伴うURLの変更については、WordPressが自動的に301リダイレクトを処理してくれるため、別途手動でのリダイレクト設定は不要でした。

ただし、以下の点は引き続き注意が必要です。

  • 記事公開前に正しいカテゴリを設定しておくことがベスト(公開後の変更はリスクを伴う)
  • 自動リダイレクトが機能しているかは、開発者ツールで実際に確認することを推奨
  • WordPressのバージョンやサーバー環境によって挙動が異なる場合がある

コメントする

上部へスクロール