WordPressで別ドメインサイトにリダイレクトさせる方法!

どうもマサシです。

本記事ではWordPressの記事を別ドメインのサイトの記事にリダイレクトする方法について解説します!

ブロガー

WordPressで運営しているサイトを別ドメインのサイトに移行しています。SEOの評価もできればそのまま受け継ぐようにしたいのですが可能ですか?

マサシ

301リダイレクトをすればSEOの評価も引き継げます!WordPressのプラグインを用いたリダイレクト方法を解説するので是非参考にしてみてください!

本記事で行うこと
  • リダイレクトはなにか解説
  • Redirectionプラグインを用いたリダイレクトの設定手順を解説

リダイレクトってなに?別ドメインにもできる?

リダイレクトとは、対象のURLにアクセスした時に自動的に別URLに転送することを言います。

一般的にはApacheなどのWebサーバで設定したり、プログラミング言語でリダイレクト用の関数を用いて行います。

もちろん別ドメインへのリダイレクトも可能です。
よく企業のWebサイトやWebサービスでPCとスマホが別ドメインになっていると、アクセスしたデバイスによってPCならPC用ドメイン、スマホならスマホ用ドメインにリダイレクトされたりします。

リダイレクトにはいくつか種類があり、RFC(インターネット技術の標準化を行う団体が発行している技術仕様ドキュメント)で以下のように定められています。

コード意味説明
301Moved Permanently恒久的に移動した
リクエストされたURLが恒久的に新しいURLへ変更されたことを指します。

サイト移管などURLが恒久的に変わる時に利用する。
302Found発見した
リクエストされたURLが一時的に新しいURLへ変更されたことを指します。

メンテナンスなど一時的に別ページを表示したい時に利用する。
303See Other他を参照せよ
一時的なリダイレクト時に利用されるが、新URLへはGETメソッドでリダイレクトされる。

入力フォームなどPOSTメソッドで通信した際に、確認画面やエラー画面などGETメソッドでリダイレクトさせたい時に利用する。
307Temporary Redirect一時的リダイレクト
302と似ており、一時的なリダイレクトを表すが、メソッドをリダイレクト先に引き継ぐことを保証する必要がある。

POSTメソッドでのアクセスに対し、別URLにPOSTメソッドでリダイレクトするなど。
308Permanent Redirect恒久的リダイレクト
301と似ており、恒久的なリダイレクトを表すが、メソッドをリダイレクト先に引き継ぐことを保証する必要がある。

POSTメソッドでのアクセスに対し、別URLにPOSTメソッドでリダイレクトするなど。

ステータスコードは色々ありますが、一般的に使うのはほぼ2種類で、恒久的リダイレクトの301と一時的なリダイレクトの302です。

今回はサイト移管を想定しているため301を設定しリダイレクトさせます。

恒久的なURL変更の場合は必ず301リダイレクトにしてください!
Googleのクローラなどもこのステータスコードを見ているため、302リダイレクトだとSEO評価が引き継がれない可能性があります!

今回はWordPressプラグインを用いた301リダイレクトの方法を解説していきます。

リダイレクト設定手順

本章ではリダイレクト手順を図入りで解説していきます。

WordPressにRedirectionプラグインをインストール

  • WordPressのダッシュボードでプラグイン画面に移動し、画面上部の「新規追加ボタン」をクリック
  • Redirectionの「今すぐインストール」をクリック
  • そのまま「有効化」ボタンをクリックし、Redirectionを有効にする

以上でインストールは完了です。

Redirectionのセットアップ

  • 左メニュープラグイン -> インストール済みプラグインに画面遷移しRedirectionの「設定」ボタンをクリック
  • 「セットアップを開始」ボタンをクリック
  • 基本セットアップ画面に遷移するので、上2つにチェックを入れ「次へ」ボタンをクリック
  • REST API画面に遷移するので、「セットアップ完了」ボタンをクリック
  • セットアップが完了したら「次へ」をクリック
  • セットアップ完了です

リダイレクト設定

  • 左メニューにから「Redirection」をクリック
  • Redirectionの設定画面に遷移するので「新しい転送ルールを追加」部分に情報を入力する
項目設定値
ソースURLリダイレクト元である旧URLを入力する。
クエリパラメータリダイレクトする際のクエリパラメータの扱いを設定する。

・Exact match in any order
ソースURLに設定したURLとクエリパラメータ含め完全一致した場合リダイレクトを行う
例)
ソースURL:https://aaaa.bbbb.cccc/ddd/eee/
ターゲットURL:https://yyyy.xxxx.zzzz/ooo/sss/
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/
https://yyyy.xxxx.zzzz/ooo/sss/ にターゲットURLにリダイレクトされる
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/?hoge=foo
リダイレクトされない

・すべてのパラメータを無視
ソースURLに設定したURLからクエリパラメータを除外したURLで一致したら、クエリパラメータを削除しリダイレクトを行う
例)
ソースURL:https://aaaa.bbbb.cccc/ddd/eee/
ターゲットURL:https://yyyy.xxxx.zzzz/ooo/sss/
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/
https://yyyy.xxxx.zzzz/ooo/sss/ にリダイレクトされる
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/?hoge=foo
https://yyyy.xxxx.zzzz/ooo/sss/ にターゲットURLにリダイレクトされる

・無視してターゲットにパラメータを渡す
ソースURLに設定したURLからクエリパラメータを除外したURLで一致したら、クエリパラメータをそのままにリダイレクトを行う
例)
ソースURL:https://aaaa.bbbb.cccc/ddd/eee/
ターゲットURL:https://yyyy.xxxx.zzzz/ooo/sss/
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/
https://yyyy.xxxx.zzzz/ooo/sss/ にリダイレクトされる
アクセスされるURL:https://aaaa.bbbb.cccc/ddd/eee/?hoge=foo
https://yyyy.xxxx.zzzz/ooo/sss/?hoge=foo にリダイレクトされる
ターゲットURLリダイレクト先である新URLを入力する。
グループ「転送ルール」を選択
  • 「新しい転送ルールを追加」で全項目入力すると「転送ルールを追加」ボタンが活性化するので、クリックする
  • 設定画面に戻り追加した設定が反映されていることとコードが301になっていることを確認する
  • 確認して問題が無かったら実際に設定した旧URLにアクセスし、新URLにリダイレクトされることを確認する

以上で完了です!

まとめ

今回はWordPressのプラグインを利用してページごとに別ドメインにリダイレクトする手順を解説しました。

今回は行いませんでしたが、ドメイン以降のURLが一緒だったら一個一個の画面に設定しなくても正規表現を使ってまとめてリダイレクト設定することも可能だと思います。

是非参考にしていただければと思います!