WordPressで記事別にリダイレクトさせるプラグイン

Wordpress

ドメインが変わるなどの理由でサイトを移転した場合、ページを別サイトに移転した場合など別URLへ転送したい場合、htaccessに301リダイレクトを記述すると自動的に転送出来るようになります。

ユーザーが自動的に新URLを見れるという事だけではなく、検索エンジンにもURLが変更したという事を知らせる事が出来るので、移転した際には301リダイレクト設定を行うことは重要です。

htaccessの記述方法

ページごとにリダイレクトしたい場合は、

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule 転送元の相対URL 転送後のURL [R=301,L]
</IfModule>
相対URLはドメインより後ろのURLとなります。
https://aplicot.jp/hoge.html の場合、/hoge.html という記述でOK。

複数のページをリダイレクトする場合は全て記述します。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule 転送元の相対URL1 転送後のURL1 [R=301,L]
RewriteRule 転送元の相対URL2 転送後のURL2 [R=301,L]
RewriteRule 転送元の相対URL3 転送後のURL3 [R=301,L]
</IfModule>
参考までにドメインのみを変更する場合(ディレクトリ構成などに変更がない場合)は正規表現を使って下記のように記述します。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*) https://新しいドメイン/$1 [R=301,L]
</IfModule>

WordPressのプラグイン Redirection

htaccessに記述するのは面倒、よく分からないという方も多いと思うので、Wordpressを利用している場合には「Redirection」というプラグインを使うと簡単にリダイレクト設定を行うことが出来ます。

Redirection

プラグインの新規追加でRedirectionを検索して「今すぐインストール」→「有効化」を行って設定画面を開く。

Redirection

「セットアップを開始」をクリック。

Redirection

設定画面はほぼ日本語化されてるけど、セットアップでは日本語化されていない部分が多いので、設定項目だけ翻訳しておきます。

Monitor permalink changes in WordPress posts and pages.
WordPressの投稿とページのパーマリンクの変更を監視

Keep a log of all redirects and 404 errors.
すべてのリダイレクトと404エラーのログを保持

Store IP information for redirects and 404 errors.
リダイレクトおよび404エラーのIP情報を保存

という内容ですが、ここは3つともチェックを入れておく設定で良いと思います。

Redirection

セットアップはこれで完了。

Redirection

「完了」ボタンをクリックすると設定画面が開きます。

Redirection

基本的には301リダイレクト(恒久的な移転)の場合は、ソースURLに移転元の相対URLを、ターゲットURLに移転後のURLを記述して転送ルールを追加すれば大丈夫です。

htaccessの時の記述と同様に
https://aplicot.jp/hoge.html の場合、/hoge.html と入力。

相対URLがよく分からない場合は、転送元のURL(この例の場合はhttps://aplicot.jp/hoge.html)を記述しておけば、プラグイン側で自動的に相対URLへ書き換えてくれます。

リダイレクト設定を細かく変更したい場合はギアマークのアイコンをクリックして設定も可能。

Redirection

転送ルールを追加すると

Redirection

このように一覧表示されて、リダイレクトが行われたログも保存され、ヒット数も表示されるので効果が確認出来ます。

こちらも参考までに、ドメインを変更したい場合はSiteという項目をクリックします。

Redirection

Relocate Site という項目に、Relocate to domain:という入力項目があるので、ここに新しいドメインを入力します。

ここの説明文で、

Want to redirect the entire site? Enter a domain to redirect everything, except WordPress login and admin. Enabling this option will disable any site aliases or canonical settings.

サイト全体をリダイレクトしたいですか?ドメインを入力して、WordPressログインと管理を除くすべてをリダイレクトします。このオプションを有効にすると、サイトエイリアスまたは標準設定が無効になります。

と記載されているとおり、Wordpressのログイン画面と管理画面を除くページがリダイレクトされるので、設定後もログインして設定の確認等が可能です。

これらの設定はもちろんhtaccessでも可能ですが、htaccessの記述は慣れない方には難しいと思うので、このプラグインを使うほうが簡単で安心だと思うので、ぜひ試してみて下さい。