ロリポップでホームページをはじめよう ロリポップでホームページをはじめよう

WordPressのリダイレクト設定方法!初心者・中級者向けに徹底解説

WordPressサイトのURLを変更したい場合に
「SEO評価が下がりそうで怖い」
「リダイレクト設定のやり方がわからないし、なんだか難しそう」
「プラグインと.htaccess、自分はどっちを使えばいいんだろう?」
と悩んでいる方は多いのではないでしょうか。

WordPressのリダイレクト設定は、サイトの評価を守り、訪問者を新しいページへ正しく案内するための重要な作業です。

本記事では、初心者向けにプラグイン「Redirection」を使った設定方法を、慣れてきた中級者向けに「.htaccess」ファイルを使ったより高度な方法をわかりやすく解説します。

また、記事後半では、リダイレクトでよくあるトラブルと解決策も紹介しています。

本記事を読めば、WordPressのリダイレクト設定に関する不安が解消され、サイトリニューアルやURL変更にも自信を持って取り組めるようになるでしょう。

ぜひ最後までご覧ください。

レンタルサーバーでホームページをはじめよう。まずは10日間無料お試し
目次

WordPressのリダイレクトとは?基本情報

WordPressのリダイレクトとは、ある特定のページにアクセスしたユーザーを、自動で別のページに転送する仕組みのことです。

サイトをリニューアルしたり、ページのURLを変更したりした際に、リダイレクト設定は欠かせません。

ここでは、WordPressにおけるリダイレクトの基本情報を、次の3つに分けて解説します。

  • リダイレクトの仕組みとSEOへの影響
  • 「301」と「302」の違いは?使い分けを解説
  • リダイレクトが必要になる主なケース

それぞれ見ていきましょう。

リダイレクトの仕組みとSEOへの影響

リダイレクトは、サーバーがブラウザや検索エンジンに「このページは別の場所に移転しました」と伝える仕組みです。指示を受けたブラウザは、新しいURLへ自動的に移動します。

これはSEOにも重要で、検索エンジンがリダイレクトを正しく認識すると、旧ページの検索順位や被リンクなどの評価を新しいページに引き継ぐことが可能です。恒久的な移転を示す「301リダイレクト」であれば、大部分を新URL側に移せます。

逆にリダイレクトを設定せずURLだけ変えると、検索エンジンは新URLを「評価のない別ページ」と見なし、重複コンテンツと判断されて順位が大きく落ちるおそれがあります。

なお、WordPressのSEO対策について詳しく知りたい方は、次の記事を参考にしてください。

関連記事

WordPressは世界中でもっとも利用されているCMS(コンテンツ管理システム)であり、その使いやすさや豊富なプラグインから、多くのサイト運営者が選択しています。一方で「WordPressを使えば自動的にSEO(検索エンジン最適化)がう[…]

「301」と「302」の違いは?使い分けを解説

リダイレクトには主に「301」と「302」の2種類があり、それぞれ意味が異なります。

簡単に言うと、「301=恒久的な移転」「302=一時的な移転」です。サイト運営では、多くの場合で301を使うことが基本になります。

301リダイレクトと302リダイレクトの違いを次の表にまとめました。

種類301リダイレクト302リダイレクト
意味恒久的(永続)な移転一時的な移転
SEOへの影響原則として新URLに評価が引き継がれる状況によっては旧URLを基準に評価が判断される
検索エンジンの解釈「完全に引っ越しした」と判断「あとで元に戻る」と判断

具体的な使い分けは次のとおりです。

  • 301を使う場面
    サイトのドメインを変更した、記事のURLを恒久的に変更した、サイト全体をSSL化した(http→https)など、今後ずっと新しいURLを使い続ける場合。
  • 302を使う場面
    サイトのメンテナンス中に数時間だけお知らせページへ転送する、キャンペーン期間中だけ特設ページに誘導するなど、あとで必ず元のURLに戻す予定がある場合。

リダイレクトが必要になる主なケース

WordPressのリダイレクトが必要になるケースを一覧でまとめました。

必要になるケース理由
ドメインを変更したとき旧ドメインの評価を新ドメインへ引き継ぐため
ページURL(パーマリンク)を変更したときブックマークやSNSリンクから新URLへ確実に誘導するため
サイトをSSL化したとき(http→https)httpとhttpsが混在すると評価が分散するため
「www」の有無を統一したいとき2つのURLが存在すると重複扱いのリスクがあるため
PCサイトとスマホサイトでURLが異なるとき端末に適したページに適切に転送するため
一時的にページを非公開にするときメンテナンス中のエラー表示を避けるため

上記に該当する場合は、早めに適切なリダイレクトを設定しておくことで、SEO評価の損失やユーザー離脱を防げます。

【初心者向け】プラグイン「Redirection」でリダイレクトを設定する方法

WordPressを始めたばかりの方には、定番プラグイン「Redirection」を使ってリダイレクトを設定するのがおすすめです。Redirectionは、サーバーエラーのリスクが低く、設定画面で入力内容を確認しやすいため安心です。

ここでは、Redirectionでリダイレクトを設定する方法を紹介します。

  • 手順1:Redirectionをインストールして有効化する
  • 手順2:初期設定(セットアップ)を完了させる
  • 手順3:個別ページのリダイレクトを設定する(1ページ単位の転送)
  • 手順4:サイト全体のリダイレクトを設定する(ドメイン変更やSSL化のとき)

それぞれ見ていきましょう。

手順1:Redirectionをインストールして有効化する

Redirection

まずは、WordPressの管理画面から「Redirection」プラグインをインストールします。

手順は次のとおりです。

  1. WordPress管理画面の左側メニューから「プラグイン」を選び、「新規追加」をクリック
  2. 画面右上の検索窓に「Redirection」と入力
  3. 目的のプラグインが表示されたら、「今すぐインストール」ボタンをクリック
  4. インストールが完了すると、ボタンが「有効化」に変わるので、再度クリック

上記の手順でインストールと有効化は完了です。管理画面の「ツール」メニューの中に「Redirection」という項目が追加されているのが確認できます。

手順2:初期設定(セットアップ)を完了させる

プラグインを有効化すると、初回のみ簡単な初期設定画面(セットアップウィザード)が表示されます。画面の案内にしたがって進めるだけで、基本的な設定はすぐに完了します。

手順は次のとおりです。

  1. 「ようこそ」という画面が表示されたら、「セットアップを開始」ボタンをクリック
  2. 次に、基本セットアップのオプション画面が表示されるので内容を確認する
  3. REST APIの状態が「良好」と表示されていることを確認し、「セットアップを続行」をクリック
  4. 最後に「完了」画面が表示されたら、初期設定は終了

記事URLを変更した際に自動リダイレクトを作成したい場合は、「WordPress の投稿と固定ページのパーマリンクの変更を監視」にチェックを入れておくと便利です。

手順3:個別ページのリダイレクトを設定する(1ページ単位の転送)

初期設定が終わったら、実際にリダイレクトを設定してみましょう。個別のページを転送する場合、「転送元(古いURL)」と「転送先(新しいURL)」を指定するだけで、とても簡単に設定できます。

手順は次のとおりです。

新しい転送ルールを追加
  1. 管理画面の「ツール」から「Redirection」を開くと「新しい転送ルールを追加」という入力フォームが表示される
  2. ソースURLに、古いページのURL(ドメイン名(〇〇.com)より後ろの部分)を入力
  3. ターゲット URLに新しいページのURLをすべて入力
    例:「https://example.com/new-page/」
  4. 入力欄の右側にある歯車のアイコンをクリックし、HTTPコードが「301 – 恒久的に移動」になっているか確認
  5. 最後に「転送ルールを追加」ボタンをクリックすれば、設定完了

設定後は、ブラウザのシークレットモードなどを利用して、実際に古いURLにアクセスしてみてください。自動的に新しいURLのページに転送されたら成功です。

手順4:サイト全体のリダイレクトを設定する(ドメイン変更やSSL化のとき)

「Redirection」プラグインには、サイト全体をまとめてリダイレクトする機能もあります。ただし、サイトのドメイン移転のような大規模な変更の場合、次に紹介する「.htaccess」ファイルを使った設定のほうが、より確実なケースもあります。

プラグインはWordPressが動作することで初めて機能するため、サーバーレベルでのドメイン移転には対応しきれないことがあるからです。

プラグインで設定する場合の手順は、次のとおりです。

  1. Redirectionの管理画面上部にある「サイト」タブを開く
  2. 「ドメインへリダイレクト(英語の管理画面では Relocate to domain など)」という項目を探し、新しいサイトのドメイン名を入力して保存

この方法は、旧ドメイン側でもWordPressが動いているのが前提となります。サーバーごと引っ越しをするような場合は、.htaccessでの設定を検討するのがおすすめです。

【中級者向け】.htaccessでリダイレクトを設定する方法:プラグインなし

プラグインなしでWordPressのリダイレクトを設定する方法として、「.htaccess(ドットエイチティーアクセス)」というファイルを直接編集する方法があります。.htaccessはWebサーバーの動作を制御するための設定ファイルです。

ここでは、中級者向けに.htaccessでリダイレクトを設定する方法を、以下に分けて解説します。

  • .htaccessを編集する前の注意点とバックアップ
  • ページ単位でリダイレクトする書き方
  • ディレクトリ単位でリダイレクトする書き方
  • ドメイン単位でリダイレクトする書き方(wwwありなし・SSL化)

それぞれ見ていきましょう。

.htaccessを編集する前の注意点とバックアップ

.htaccessファイルを編集する前には、必ずファイルのバックアップを取りましょう。理由は、万が一編集ミスでサイトが表示されなくなっても、バックアップしたファイルを元に戻せばすぐに復旧できるからです。

バックアップの手順は次のとおりです。

  1. レンタルサーバーが提供している「ファイルマネージャー」機能や、FTPソフトを使ってサーバーに接続
  2. WordPressをインストールしたフォルダ(public_htmlなど)直下にある、「.htaccess」という名前のファイルを探す
    このファイルは隠しファイルになっていることが多いので、表示設定の変更が必要な場合がある
  3. 見つけたら、そのファイルを自分のパソコンにダウンロードして、コピーを別に保管しておく

ファイルを編集するときは、Windowsのメモ帳ではなく専門のテキストエディタを使うほうが安全です。文字コード(UTF-8)や改行コード(LF)に対応しているため、表示崩れや文字化けを防げます。Visual Studio Codeなどのエディタを利用すると安心です。

なお、WordPressのバックアップ方法を詳しく知りたい方は、次の記事を参考にしてください。

関連記事

WordPressのサイトは、思わぬトラブルで一瞬にして画面が真っ白になったり、ログインできなくなったりと壊れてしまうことがあります。 また、外部からの不正アクセスによりサイトが勝手に書き換えられる可能性もゼロではありません。その[…]

ページ単位でリダイレクトする書き方

.htaccessファイルを使って1つのページを別のページへリダイレクトさせるには、「Redirect 301」という命令文を記述するのがもっともシンプルな方法です。

ファイルの編集画面を開いたら、ファイルの一番上(# BEGIN WordPressという記述よりも前)に、次のように1行追加します。

Redirect 301 /old-page/ https://www.example.com/new-page/

記述のルールは、「Redirect 301」のあとに半角スペースを空け、「古いURLのパス(ドメイン以下の部分)」、半角スペースを空けて「新しいページの完全なURL」の順番です。

これを記述して保存すれば、リダイレクトが有効になります。

ディレクトリ単位でリダイレクトする書き方

サイトの構成を変更して、特定のカテゴリ(ディレクトリ)のURLをまとめて変更したい場合も、「Redirect 301」で対応できます。ディレクトリ内のページを一つずつ設定する必要はなく、一括でリダイレクトさせることが可能です。

例えば、「/blog/」というディレクトリを「/article/」に一括で変更したい場合は、.htaccessファイルに次のように記述します。

Redirect 301 /blog/ https://www.example.com/article/

このようにディレクトリ名の末尾にスラッシュ(/)を付けて記述することで、/blog/配下のすべてのページが、/article/配下の同じ名前のページへ自動的に転送されます。

例えば、「/blog/post1」へのアクセスは、「/article/post1」へ転送されるイメージです。

ドメイン単位でリダイレクトする書き方(wwwありなし・SSL化)

サイト全体のURLを統一するような、より複雑なリダイレクト設定には、「RewriteEngine」という機能を使った高度な記述方法を用います。

例えば、サイトをSSL化してすべてのアクセスを「http」から「https」へ統一したい場合や、「wwwあり」と「wwwなし」のURLをどちらかに統一したい場合に使います。これらの記述も、.htaccessファイルの先頭に書き込みます。

以下は、代表的なリダイレクト設定の具体例です。

▼httpからhttpsへ(SSL化)
RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
▼wwwなしからwwwありへ
RewriteEngine OnRewriteCond %{HTTP_HOST} ^example\.com$ [NC]RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

複数の転送ルールを設定する場合は、「http→https」→「wwwあり/なしの統一」のように、処理の順番を正しく並べることが重要です。順序が逆になると、想定しないURLに転送されたり、リダイレクトループが発生することがあります。

.htaccessの書き方について詳しく知りたい方は、次の記事を参考にしてください。

関連記事

こんにちは!ロリポップCRチームのotomiです。今回は、WordPressでの.htaccessの書き方についてご紹介します。.htaccessを編集することでWordPressやサーバーのさまざまな設定を行うことができます。W[…]

WordPressのリダイレクトでよくあるトラブルと解決策

WordPressのリダイレクトを設定したあとに、予期せぬトラブルが発生することがあります。ここでは、よくある3つのトラブルと解決策を紹介します。

  • 設定したのにリダイレクトされない
  • 「リダイレクトループ」が発生する
  • 勝手にリダイレクトされる

それぞれの原因と解決策を見ていきましょう。

設定したのにリダイレクトされない

リダイレクトを設定したはずなのに、古いURLにアクセスしても転送されない、というケースがあります。多くの場合、原因は「ブラウザのキャッシュ」か「設定ミス」のどちらかです。

▼キャッシュが原因の場合
ブラウザには、一度訪れたページの情報を一時的に保存しておく「キャッシュ」という機能があります。この古い情報が残っているせいで、新しいリダイレクト設定が反映されていないことがあります。

▼設定ミスが原因の場合
プラグインで設定したURLの入力ミス(スラッシュの有無など)や、.htaccessファイルの記述ミス、または記述する場所の間違いなどが考えられます。

解決策として、まずブラウザのシークレットモード(プライベートブラウジング)でアクセスしてみましょう。もしくは、キーボードの「Ctrl」+「F5」キーを同時に押して、強制的に最新情報を読み込んでみてください。

それでも解決しない場合は、設定したURLのスペルやパスが一字一句間違っていないか、丁寧に見直してみましょう。

「リダイレクトループ」が発生する

ブラウザに「リダイレクトが繰り返し行われました(ERR_TOO_MANY_REDIRECTS)」というエラーが表示されることがあります。これは、転送設定が無限に繰り返されてしまう「リダイレクトループ」という状態に陥っているサインです。

原因として、次のような設定ミスが考えられます。

  • ページAからページBへ、同時にページBからページAへ、というようにお互いを転送し合う設定をしてしまっている
  • 「http→https」と「https→http」の両方の設定が有効になっているなど、矛盾したルールが混在している
  • プラグインと.htaccessファイルの両方で、同じURLに対して競合するリダイレクト設定を行っている。

解決策としては、まず最近追加したリダイレクト設定を一時的に無効にしてみて、ループが解消されるかを確認します。原因となっている箇所を特定し、矛盾した設定を修正したり、設定をどちらか一方に統一したりすることで解決できるでしょう。

勝手にリダイレクトされる

自分で設定した覚えがないのに、意図しないページへ勝手にリダイレクトされてしまうことがあります。代表的な原因として、プラグインが持つ正常な機能か、あるいは悪質なサイト改ざん(ハッキング)の可能性が考えられます。

▼プラグインの機能が原因の場合
会員制サイト系のプラグインには、ログイン状態によって表示ページを切り替えたり、特定のページへ自動転送する機能が備わっているものがあります。

▼サイト改ざんが原因の場合
悪意のある第三者が、.htaccessファイルやテーマファイルに不正なコードを仕込むケースがあります。広告サイトや詐欺サイトに飛ばされる「リダイレクトハック」と呼ばれる被害の可能性も考えられます。

解決策として、まずは原因となっていそうなプラグインを一時的に停止してみて、リダイレクトが止まるかを確認します。もしサイト改ざんが疑われる場合は、すぐにセキュリティプラグインでサイトをスキャンし、契約しているレンタルサーバー会社に相談してみましょう。

WordPressのリダイレクトに関するよくある質問

最後にWordPressのリダイレクトに関するよくある質問に回答します。

  • 自動補完リダイレクトを解除する方法は?
  • 特定の固定ページにリダイレクトさせる方法は?
  • 「リダイレクトが繰り返し行われました。」と表示される原因は?

順に見ていきましょう。

自動補完リダイレクトを解除する方法は?

自動補完リダイレクトを解除したい場合は、functions.phpにコードを追加するだけで大丈夫です。この設定を入れると、似たURLへ自動転送されず、存在しないURLは正しく404ページが表示されます。

具体的には、次のコードを追記します。

function disable_auto_complete_redirect( $redirect_url ) {    if ( is_404() ) {        return false; // 404のときは自動リダイレクトしない    }    return $redirect_url;}add_filter( ‘redirect_canonical’, ‘disable_auto_complete_redirect’ );

WordPressの過剰な自動転送を止めたいときに手軽に使える方法です。

特定の固定ページにリダイレクトさせる方法は?

特定のページだけを別URLへ転送したい場合は、プラグイン「Redirection」を使うのがもっとも簡単です。

プラグインをインストールして有効化した後、「ツール」→「Redirection」の管理画面を開きます。そして、「ソースURL」に古いページのURLを、「ターゲットURL」に新しいページのURLを入力し、「転送ルールを追加」ボタンを押すだけで設定は完了です。

中級者向けには、.htaccess に次のような記述を追加する方法もあります。

Redirect 301 /old-page/ https://example.com/new-page/

ただし記述ミスはサイトエラーにつながるため、作業前に必ずバックアップを取ってください。

「リダイレクトが繰り返し行われました。」と表示される原因は?

サイト側のリダイレクト設定になんらかの矛盾が生じていることが主な原因です。

よくある原因としては、次のようなケースが挙げられます。

  • ページA→B、ページB→Aというように、ページ同士が互いを転送し合っている
  • 「http→https」と「https→http」への転送設定が両方有効になっている
  • プラグインと.htaccessで、同じURLに対して別々のリダイレクト設定が競合している。
  • WordPressの一般設定で指定しているサイトのURLと、リダイレクト設定の内容が食い違っている

また、まれにブラウザに残っている古いキャッシュやCookieが原因の場合もあります。対処法としては、まず最近変更したリダイレクト設定を無効にして原因を特定し、修正します。その後、ブラウザのキャッシュを削除し、シークレットウィンドウで再度確認するのが有効です。

まとめ

WordPressのリダイレクト設定は、サイトの評価を落とさずに育て続けるための大切な作業です。恒久的な変更には「301リダイレクト」を使い、初心者はまずプラグインから始めるといった基本さえ押さえれば安心して運用できます。

また、安定した運用にはサーバー環境も重要です。プラグインが快適に動き、.htaccessの編集もスムーズに行える環境であれば、リダイレクト設定の不安も大きく減ります。

ロリポップ!」は、WordPressと相性の良い高速環境とサポートを手頃な価格で提供しているため、これから始める方にも、今の環境に不満がある方にもおすすめです。まずは10日間の無料お試しで、その使いやすさを体感してみてください。

ロリポップなら、お申込みと同時にWordPressがセットアップされます。

まずは10日間の無料期間を使って、ロリポップの使い心地を試してみてください。