この記事は、WordPressで記事のURLを変更したい際のリダイレクト設定方法をまとめた記事です。当サイトでは、実際に記事のURLを変更して、301リダイレクトを行いました。このときの手順や学んだことをまとめていきたいと思います。
この記事は、以下のような方におすすめです!
- 記事のURLを変えたいけど、リダイレクトの仕方が分からない方
- .htaccessを使ったリダイレクト設定の仕方を学びたい方
記事ごとにリダイレクト設定をしたい
記事のURLを変更したい場合、リダイレクト設定をする必要があります。
リダイレクト設定とは、ウェブページにアクセスしたときに、特定のURLから別のURLに自動的に転送させるための設定です。この設定をApacheであれば、.htaccessに記述することでWordPressのプラグインを使わず、URLが異なる個別記事の移動やサイトの転送ができるようになります。
今回、当サイトで以下のURLを対象にリダイレクトを行いました。
- 旧URL:https://www.nekotabiya.com/contents-boost-introducing/
- 新URL:https://www.nekotabiya.com/sakura-contents-boost-www-site-redirect/
このURLを使用して、リダイレクト設定を行った手順を具体的にご紹介します。
リダイレクト設定導入手順
①バックアップを取る
はじめに、WordPressと.htaccessファイルのバックアップを必ず取っておきましょう。
これから、.htaccessの内容を変更する作業があるため、万が一のためにバックアップが必要です。バックアップを取らずに作業すると、最悪の場合、サイトにアクセスできなくなってしまう可能性があります。
ファイルの破損が発生すると修復が非常に難しくなるため、バックアップは必ず実施するよう徹底しましょう。
②.htaccessにリダイレクト設定を追加
次に、.htaccessにリダイレクト設定を追加していきましょう。
私の環境では、以下のコードを追加しました。
# 特定のURLから別のURLへのリダイレクト
RewriteEngine On
RewriteRule ^contents-boost-introducing/$ /sakura-contents-boost-www-site-redirect/ [R=301,L]
このコードにより、旧URLでアクセスしてきた人を新URLに転送(301リダイレクト)するという処理をしてくれます。
301リダイレクトと302リダイレクトの違い
- 301リダイレクト:恒久的なリダイレクトを意味するステータスコードです。リソースが新しい恒久的なURLに移動したことを示します。
- 302リダイレクト:一時的なリダイレクトを意味するステータスコードです。リソースが一時的に異なるURLにあることを示します。
③反映されたか確認をする
それでは、ブラウザのURL欄に旧URLを入力し、正しくリダイレクトが設定されているか確認しましょう。
上記の画像のように、設定が成功していれば、入力した旧URLが自動的に新URLへ転送され、新しいページが表示されます。
また、より詳細に確認するためには、開発者モードの「Network(ネットワーク)」タブを使用すると便利です。
使用する順番は、
- 開発者モード(F12)を起動する
- 開発者モードの「Network」を開く
- 旧URLをブラウザのURL欄に入力して、Enterキーを押す
- 上記の画像のように、ステータスが「301」になっていることを確認する
この方法を使うと、リダイレクトが技術的に正しく動作しているか確認できます。
なぜCocoonの機能でリダイレクトを使わないの?
Cocoonのリダイレクト設定は、私の環境には合わなくて使いませんでした。
WordPressテーマのCocoonでは、記事ごとにリダイレクトができる機能があります。この機能を使うことで、リスクのある.htaccessを使わなくても、301リダイレクトをすることができます。
しかし、この機能を使いリダイレクトをしようとすると、同じ記事が2つできてしまいます。同じ記事が2つできてしまうと、記事がタブって人気記事や関連記事の一覧に表示されてしまいます。
もし、この機能を有効活用したいのであれば、異なるドメイン間で記事単位に引っ越しをしたいときに使うのが良いのではないかと思いました。ドメイン間であれば、それぞれに1つずつ同じ内容の記事がある状態になるので、記事がダブってしまうような問題は回避できます。
このような考えの末、Cocoonのリダイレクト設定を使いませんでした。
注意点
内部リンクの修正
URLを変更した記事が内部リンクとして設定されている場合、リンク先が旧URLのままになっている点に注意が必要です。
私の場合、内部リンクを含む記事が数か所しかなかったので、手動でURLを新URLに修正しました。しかし、運営されている記事数が多く、内部リンクが多数ある場合は、すべて手作業で修正しなければなりません。
このような場合は、置換プラグインを使用する方法がおすすめです。置換プラグインを使えば、旧URLを新URLに一括で変換できるため、効率的に修正ができます。
内部リンクが多い場合は、ぜひ置換プラグインの活用をご検討ください。
まとめ
- リダイレクト設定導入手順
- ①バックアップを取る:WordPressと.htaccessファイルのバックアップを必ず取る
- ②.htaccessにリダイレクト設定を追加:.htaccessに301リダイレクト設定を追加していく
- ③反映されたか確認をする:ブラウザのURL欄に旧URLを入力し、正しくリダイレクトが設定されているか確認する
- なぜCocoonの機能でリダイレクトを使わないの?
- この機能を使うと、サイトに同じ記事が2つ存在してしまい、人気記事を表示する機能や関連記事を表示する機能を使用すると、タブって表示されてしまうから
- 注意点
- 内部リンクの修正:URLを変更した記事がリンク先になっている内部リンクのURLを変更する