WordPressで 301 リダイレクトを作成する方法を解説

1ページだけのURLを変更しているのか、完全に新しいドメインに移行しているかにかかわらず、301リダイレクトをWordPressのサイトでコントロールするルールを学ぶことは、あなたのウェブサイトのユーザー体験を向上させ、SEOの健全性を保護するのにも役立ちます。

この記事では、WordPressでの301リダイレクトのプロセスをわかりやすく解説していきます。

この簡単に管理できるメンテナンス機能をページやドメインレベルで数分で実装できます。

WordPressでの301リダイレクトとは何でしょうか?

301リダイレクト(もしくはパーマネントリダイレクト)は、ウェブページを別のURLに永久的に移動させるためのHTTPステータスコードです。301リダイレクトの設定があると、ブラウザに古いURLを入力されたり、古いURLへのリンクをクリックすると、あなたのウェブサイトは指定された新しいURLへ移動、表示させます。

さらに、301リダイレクトは、ページが恒久的に移動したことをGoogleグーグルに伝え、新しいURLを古いURLと同様に扱うべきであることを知らせます。

次のような際に、301リダイレクトを理解しておくことは重要で、役立ちます。

  • コンテンツ見直しの一環で、ページを変更したり、既存のページを削除/結合したりする場合に、そのURLが持つ評価を新しいURLに渡したい。
  • 404エラーを表示するのではなく、機能的なページにユーザーを誘導したい。
  • あなたが苦労して獲得したSEOランキングをすべて失うことなく、WordPressサイトのドメインを変更したい。
  • ページが恒久的に移動されたことをGoogleクローラーに伝えたい。

301リダイレクト と 302リダイレクト

ところで、リダイレクトには301、302、303、307、308の5種類があることを知っていますか?その中でも、301と302が最も一般的に使われているリダイレクトです。

  • 301リダイレクトは永続的なリダイレクトです。301リダイレクトでは、Googleボットとサイトの訪問者の両方に対し、恒久的に新しいページをさし示します。
  • 302 リダイレクトは一時的なリダイレクトです。302 リダイレクトでは、Googleボットをリダイレクトせず、リンクの資産を新しいURLへ渡しません。古いURLに訪れた人間の訪問者を新しいページにリダイレクトするだけです。
    これらのリダイレクトの種類をGoogleのクローラーがこのように読みとるので、SEOに費やした努力を出来るだけ維持する恒久的なURLの切り替えをしたい場合は、301リダイレクトが新しいURLにトラフィックを再設定するために好ましい方法となります。

メンテナンスやウェブサイト構築の間の時間に、別のページへのトラフィックを一時的に逃す必要がある場合は、302リダイレクトが便利です。しかし、それは控えめに使用されるべきで、SEOの評価は渡さないことを理解しないとなりません。

WordPressワードプレスで301リダイレクトを設定する方法

WordPressで行える設定作業のほとんどと同様に、301リダイレクトを設定する方法はたくさんあります。301リダイレクトを設定できるWordPressプラグイン、.htaccessファイル、さらにはPHPを使用することもできます。しかし、.htaccessファイルと301リダイレクトを設定できるWordPressプラグインが、最も設定しやすい選択肢です。

方法1:ページレベルの301リダイレクトに、WordPressのリダイレクト・プラグインを使用

無料で利用できる「Redirection」というWordPressプラグインは、WordPressで301リダイレクトをページレベルで設定するのに最適です。例えば、 samplesite.com/old-page を samplesite.com/new-page にリダイレクトする時に利用します。

もし、ドメインレベルでリダイレクトするのであれば、次のセクションで紹介する .htaccess メソッドを使った方が良いでしょう。

まずは、WordPress.orgからプラグインをインストールして有効化します。その後、ツール -> Redirection に移動して、プラグインの設定ウィザードを実行します。

セットアップウィザードを終えたら、最初のリダイレクトを作成するために、Redirectsタブの新規追加ボタンをクリックします。

4つの設定項目が表示されます – ここではそれらを設定する方法を説明します。

  • Source URL – リダイレクトする元のURLを入力してください。つまり、誰かがこのページを訪問すると、別のページにリダイレクトされます。
  • Query Parameters – 既定値のままにしてください。
  • Target URL – あなたが訪問者に案内したい新しいURLです。つまり、誰かがSource URLにアクセスすると、このURLに移動します。
  • Group – これはリダイレクト設定を整理するのに役立ちます。デフォルトのままでいいと思います。異なるリダイレクトを整理したい場合に、[グループ] タブを使用して新しいグループを作成することができます。

次に、[Add Redirect]をクリックして設定を完了させます。

この時点でページがリダイレクトされていないようであれば、キャッシュされているデータをクリアすると表示されるはずです。

方法2:.htaccessを使用してWordPressに301リダイレクトを追加

ドメインを移行する場合は、WordPressサイトの.htaccessファイルを使って301リダイレクトを設定するのが最も効率的です。プラグインを使う方法ほど便利ではありませんが、.htaccess ファイルを使ってページレベルのリダイレクトを設定することもできます。

開始するには、.htaccess ファイルを編集するためにウェブサイトのサーバーに接続する必要があります。

1. .htaccessファイルを探します。

サイトの .htaccess ファイルのコードを変更するには、まず、ウェブサーバーにFTPでログインします。

そして、サイトのルートフォルダにある.htaccessファイルを探します。

2. .htaccessの内容をバックアップする

この次のステップが重要です。正しく取り扱わない場合、.htaccess文書がウェブサイトの機能に影響を与える可能性があります。このファイルに変更を加える前に、ファイル名を右クリックして「ダウンロード」を選択し、オリジナルをバックアップしていることを確認してください。

3. 301リダイレクトコードを追加

ファイルをローカルPCに保存したら、「.htaccess」ファイルを選択して「編集」をクリックします。または、ファイルを右クリックして「編集」オプションを選択することもできます。次のステップに進むには、表示されたダイアログボックスの「編集」をクリックします。

テキストエディタでは、必要に応じて以下のコードスニペットのいずれかを追加します。

1つのページを別のページにリダイレクトする場合

Redirect 301 /old-page.html http://www.samplesite.com/new-page.html

例のURLは、リダイレクトしたい実際のページのURLに置き換えてください。

ドメイン名全体を別のドメイン名にリダイレクトする場合

このコードスニペットは、新しいドメインの同じURLスラッグのページ宛てに訪問者を転送します。
例)oldsamplesite.com/example-post から newsamplesite.com/example-post へ

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www.)oldsamplesite.com$ [NC]
RewriteRule ^ http://newsamplesite.com%{REQUEST_URI} [L,R=301]

例に挙げたドメイン名は、必ず実際の新旧ドメイン名に置き換えてください。

.htaccessファイルを編集した後、保存すると、リダイレクトが機能しているはずです。

301 リダイレクト まとめ

ドメインからドメインへのリダイレクトを行う場合は、新しいページが元のページに似たコンテンツであることを確認してください。

ページのSEOスコアへのダメージを最小限に抑えるために、古いページにあったコンテンツを少なくとも70%は反映している必要があります。

さらに、リダイレクトが完了した後は、リンク切れがないかどうかを徹底的にチェックして、すべてが機能しているかどうかを確認してください。

この記事を書いた人

WP Recipe