運用を初めて3年目のブログ(WordPress)のパーマリンク設定を変更した話

  • 2021年1月4日
  • 2021年1月4日
  • Tips

このブログを初めて3年目になるけど、ブログ当初から利用していたパーマリンクの形式を変更したので、やり方とかをメモ代わりに記載します。同じような悩みを持ってる人の参考になればと思います。

WordPress のパーマリンクって?

パーマリンクとは各記事の URL の部分のことをいいます。WordPress はパーマリンクの設定として以下の設定が可能です。私はブログを始める時にちょっとだけ悩んで、あまり深く考えずに「日付と投稿名」を選びました。

WordPress パーマリンク

 

日付と投稿名」を選ぶと「https://fuji-x-life.tokyo/(年4桁)/(月2桁)/(日2桁)/」までが固定で、その次の「sample-post」の部分が自分で自由に設定できる文字列になります。

ブログを始めた時は、投稿を行った日付がわかりやすいかなと思って「日付と投稿名」を選んだんだけど、最近思ってるのが URL が無駄に長くなるなーっていうことでした。なのでパーマリンクの設定を一番シンプルでどの記事かがわかりやすい「投稿名」に変更したいと思うようになりました。

 

WordPress のパーマリンクの変更方法

ここからは WordPress を使ったブログの運用中にパーマリンクを変更する際の手順を解説します。

本番運用中の WordPress パーマリンク変更時の注意事項

WordPress のパーマリンクの変更自体はすごく簡単で、さっき紹介した設定画面でラジオボタンで好きなのを選んで変更を押すだけで完了します。ただ、既に利用しているブログサイトでパーマリンクを変更すると各記事の URL が変更となるため、以下の問題が発生します。

  1. 検索エンジン(Google など)に登録されている URL と不一致となって、リンク切れを起こすため、SEO 的に1からの再出発になり不利
  2. 各記事をお気に入りとかに登録してくれている人がアクセスした際にリンク切れでページが表示出来ない
  3. 各記事内に記載している、自ブログの紹介 URL がリンク切れとなる

 

ということで基本的には同じ記事であっても URL が変わるため、リンク切れを起こすのが問題となります。開設したばかりのブログなどであればあまり気にすることは無いけど、私みたいに3年目となるブログだと投稿しているエントリーも 185 個もあり影響が大きいため、パーマリンクの変更は慎重に行う必要があります。

 

WordPress のパーマリンク変更時の大まかな手順

パーマリンク変更時の大まかな手順については以下のとおりです。詳細はこのあとの項目で説明します。

  1. 「本番サイト」を「ステージングサイト」にバックアップ
  2. ステージングサイトで、WordPress のパーマリンク設定の変更
  3. ステージングサイトで、プラグインを使用しリダイレクト設定(301対応)
  4. ステージングサイトで、記事内の自サイトの URL の文字列の置換
  5. ステージングサイトで、動作確認を実施
  6. 「ステージングサイト」のデータを「本番サイト」に書き戻しし完了

 

※私が使っているレンタルサーバーは「さくらインターネット」というところですが、ここのサービスでは標準機能でステージングサイトを提供してくれているので、その機能を利用し、安全に設定変更を実現出来ています。さくらインターネットでのブログの作り方は以下に纏めています。

関連記事

このブログサイトを作る時に、どこで作ろうか迷ったり検討したので写真ブログを作ろうと思っている方の参考になればと思い紹介します。はじめにWordPress(ワードプレス) を選んだ理由ブログをやるためには WordPres[…]

 

「本番サイト」を「ステージングサイト」にバックアップ

さくらインターネットのステージングサイトの利用方法については、以前、WordPress のテーマを入れ替えた時に以下のエントリーで紹介しているので、そちらを参照してください。

関連記事

 これまで Wordpress のテーマとしては、無料の Cocoon を使って細かなところは自分で CSS をカスタマイズして使ってきましたが、初めて有料テーマ(ザ・トール)を導入してみたので使い勝手とかを紹介します。[…]

アイキャッチ

 

さくらインターネットのステージング機能を使えば、本番サイトに影響を出さないところで変更作業を行い、全ての変更作業が終わり動作確認が終わったものを一度に本番サイトに適用することができるため、大幅な設定変更をする際は安心して変更できるのでオススメです。

 

ステージングサイトで、WordPress のパーマリンク設定の変更

ここからの作業は本番環境に影響を出さないため、ステージングサイトで実施していきます。(利用しているレンタルサーバーでステージング環境などに対応していない場合で本番環境で作業を行う場合には事前にバックアップだけ取得し変更作業を開始しましょう。)

 

WordPress のパーマリンクの設定変更は簡単で、管理者画面の「設定」→「パーマリンク設定」から行います。今回のパーマリンクの変更は「日付と投稿名」から「投稿名」に変更します。

WordPress パーマリンク変更

 

パーマリンクの設定を変更することで投稿した記事の URL が自動的に変更され、この時点で新 URL になっているため、Google 検索やお気に入りに登録してくれている人がアクセスした際は「リンク切れ」のエラーベージが表示されるようになります。そのため、本番サイトで変更作業を行っている人は次からの作業を素早く実施しましょう。

 

ステージングサイトで、プラグインを使用しリダイレクト設定(301対応)

ここでは旧 URL にアクセスしてきたトラフィックを新 URL に自動的にリダイレクトする設定を行います。リダイレクト設定に関しては WordPress プラグインを使用することで簡単に設定することが可能です。

今回利用するプラグインは「Redirection」というものです。WordPress の管理画面からプラグインの追加から検索すると出てくるのでインストールし、有効化します。

Redirection, WordPressプラグイン

 

インストールすると「ツール」→「Redirection」が表示されるので選択し、「新しい転送ルールを追加」で左端にあるメニューから「正規表現」と「大文字と小文字を区別しない」をチェックし、歯車マークをクリックします。

Redirection, WordPressプラグイン

 

以下のとおり入力し「転送ルールを追加」をクリックします。

Redirection, WordPressプラグイン

項目設定値
ソース URL/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$
タイトル
一致条件URL のみ
一致した時URL へ転送
次の HTTP コードと共に301 – 恒久的に移動
ターゲット URL/$4

 

ソースURL の部分は「日付と投稿名」に一致する正規表現になります。意味としては「/(数字4桁)/(数字2桁)/(数字2桁)/(任意の文字列)」に一致する URL という意味になります。

次に大事な部分が「301 – 恒久的に移動」の部分です。これを行うことで検索サイトなどに URL が変わったことを通知出来ます。数週間程度で検索サイト側は新URL になってくれるみたいです。

最後が「ターゲットURL」になるけど、この意味としては正規表現で4つめの要素を利用するという意味になります。今回は「(任意の文字列)」の部分になるので「投稿名」と同じ形式になるので、この設定だけでこれまでの全ての記事へのアクセスを新 URL にリダイレクトすることが可能となります。

 

ステージングサイトで、記事内の自サイトの URL の文字列の置換

次に困るのが、自分で書いた記事内で他の記事を紹介しているところです。紹介しているところは URL でベタ書きしてるので、全ての記事を再チェックして、全て手動で書き換えるのは、めちゃくちゃ面倒なので、これもプラグインを使用することで一括で書き換えます。

ただし、書き換えにミスると大変なことになるので、サイトのバックアップはしっかと取ってから進めましょう。

 

プラグインの追加から「Search Regex」を追加し有効化します。

Search Regex, WordPressプラグイン

 

有効化すると「ツール」→「Search Regex」が表示されるので選択し、検索フラグで「正規表現」にチェックを入れて「検索」ボックスに以下の文字列を入力し「検索」をクリックします。

Search Regex, WordPressプラグイン

項目設定値
検索https://(ドメイン名)/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)/

上記の画像ではドメイン名の部分をボカしてるのは、ステージング用の専用ドメインのためボカしてます。本番サイトで実施する人は、私のサイトの場合には「https://fuji-x-life.tokyo/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)/」と入力します。

 

検索」ボタンをクリックすると置換対象となる部分が「黄色背景」で表示されるので、置換したい文字列が選択されていることを確認します。ここで意図しない文字列が黄色背景になっている場合には正規表現の記載が間違えているので、正規表現の記述を修正する必要があります。

Search Regex, WordPressプラグイン

 

置換対象が一致していることを確認したら「置換」ボックスに置換後の文字列を入力すると検索結果の画面の部分が置換後の文字列が「オレンジ背景」で表示されるので置換後の文字列になっていることを確認します。

Search Regex, WordPressプラグイン

項目設定値
置換https://(ドメイン名)/$4/

 

置換後の文字列が問題ないことを確認後に「すべて置換」をクリックします。

※「すべて置換」をクリックすると実データが書き換えられ元に戻れなくなので、事前にチェックはしっかりしてから実行しましょう!

Search Regex, WordPressプラグイン

 

置換の進捗状況が 100% になれば完了です。私の環境では数秒で完了しました。

Search Regex, WordPressプラグイン

 

ステージングサイトで、動作確認を実施

ここまでくれば設定変更作業は完了なので、念の為、何個か記事を確認し、正常に稼働していることを確認します。

 

「ステージングサイト」のデータを「本番サイト」に書き戻しし完了

今回の手順では設定変更を行ったのはステージングサイトのデータに対して行ったので、本番サイトへの書き戻しは先程も紹介した以下の記事を参考にしてください。

関連記事

 これまで Wordpress のテーマとしては、無料の Cocoon を使って細かなところは自分で CSS をカスタマイズして使ってきましたが、初めて有料テーマ(ザ・トール)を導入してみたので使い勝手とかを紹介します。[…]

アイキャッチ

 

本番サイトに書き戻す戻すタイミングはアクセスが少ない深夜とかに行うのがいいと思います。

 

最後に

リダイレクト設定は数ヶ月そのままにして、旧URLでのアクセスがなくなったことを確認後に削除でいいと思います。ルールを残したままでも問題はないので心配ならそのままでもいいと思います。

 

WordPress のパーマリンク設定を運用中に変更するのは面倒くさいので、これから WordPress でブログを始める人は、ある程度考えてから好みのパーマリンク設定を選んだほうがいいと思います。