【WordPress】パーマリンク途中変更時に行う7ステップ

この記事は最終更新から2年以上が経過しています。情報が古くなっている可能性があります。

WordPressサイトを運用していく内に、SEOが気になってきて「パーマリンク設定を変えたいな」と思う人は多いんじゃないかと思います。
パーマリンク設定を変えること自体は非常に簡単。
しかし、SEOや外部サイトからのリンク切れ、サイト内のリンク切れ等など諸々の問題が発生する可能性が付随する作業でもあります。

この間仕事で作業する機会があったので、備忘録がてらパーマリンク変更を行う時の作業について自身が行う場合の手順を整理してみました
あくまで個人的なやり方の一例ですが、ご参考になれば幸いです。

準備

作業を行う前に、調査や準備を行っていきます。

事前に必要なリダイレクトルールを把握する

パーマリンク設定を変更するとき、実はリダイレクト設定が必須ということはありません
変更内容によっては、WordPressが内部で自動リダイレクトしてくれる場合があります。

そのため、

  • 手動のリダイレクト設定が必要か、必要な場合はどんなリダイレクトルールが必要か
  • リダイレクトを設定する場合は.htaccessを編集するか、プラグインを使うか

を予め把握しておきましょう。

リダイレクトの必要有無と設定内容、方法をまとめている記事があるので、よければ参考にしてみてください。

URLリストを作成

現時点(パーマリンク変更前)でのサイトのURLリストを作成します。
作業後にリダイレクトが正常に動作するのかを確認するときに使ったり、何か問題があったときに以前の構造を把握できたりするので、作るとなにかと便利だなぁと感じてます。

URLリストを抽出する方法としてはここらへんがあります。

バックアップの取得

念の為、作業前にバックアップを取得しておきましょう。
おすすめのプラグインはこちら。

All-in-One WP Migration

512MBまではインポート・エクスポートどちらも無料で使用可能。
超える場合はオプションでメディアライブラリ等を外すことで容量を減らして対応できます。

パーマリンク設定変更

2ステップ目。バックアップをとったら、いよいよ作業に入ります。
何か問題が出た時のため、なるべくアクセスが少ない時間帯がおすすめ。

設定>パーマリンク設定画面を開きます。

任意のパーマリンク構造を設定し、左下の「変更を保存」のボタンをクリック。
一瞬ですが、これでパーマリンクの切り替え自体は完了しました。

リダイレクトの設定

3ステップ目。1ステップ目の事前調査でリダイレクトの手動設定が必要だった場合、ここで設定を行います。
.htaccessやテーマテンプレート、プラグインを使って適用しましょう。

.htaccessならFTPで直接上書きするか、サーバーのコントロールパネルから設定可能な場合があります。
例えばエックスサーバーであれば、下記の箇所から作業が可能です。


.htaccess編集→ドメイン選択画面から当該ドメインを”選択する”→「.htaccess編集」タブをクリックし内容を編集→編集完了後「確認画面へ進む」ボタンをクリック、確定へ

プラグインで設定する場合の具体的な方法はこちらの記事をご参照ください。

Permalink Redirectの代替案!途中のパーマリンク変更のリダイレクト設定を考える

リダイレクトチェック

4ステップ目。最初の準備工程で用意したURLリストを使って、正しくリダイレクトが設定されたかを確認します。

ページ数が少なければ1ページずつアクセスをして想定通りのURLにリダイレクトされるか確かめていきます。
ページ数が多ければ下記のような複数ページ一括でステータスをチェックできるツールを使って、リダイレクト先のURLが想定通りか、最低限チェックするようにしています。

HTTPステータスコードチェッカー|一括検索&転送経路調査もOK

補足

たまに、設定したパーマリンクと明らかに違う構造のURLにリダイレクトされることがあります。
以前「カテゴリー/投稿名」→「投稿名」にパーマリンク変更した際は下記のようなケースがありました。

  • 「/category/123/」など投稿名に数字が使われていたものが、切り替え後リダイレクトされない
  • 「/category/xxxx/」から「/xxxx/」にリダイレクトされず、「/xxxx/xxxx/」(投稿名/投稿名)になってしまう(添付ファイルページのURLとバッティングしたのか、添付ファイルページに到着)

うまくリダイレクトしないページがあったら、手動でリダイレクト設定を追加してあげましょう。

サイト内のリンクチェック、修正

基本的にリダイレクトがうまく動作していれば、外部サイトからやサイト内でリンク切れが発生することはなくなると思います。

念の為本当に問題ないか、というのを確認するためにScreaming Frog SEO Spiderというツールでサイト内でリンク切れが発生していないか確認するようにしています。

Screaming Frog SEO Spiderはインストールして使用するデスクトップアプリで、無料で500URL分までチェックすることができます。
各ページのSEO情報を一覧化して見れたり、レポートでリダイレクトチェーンが発生しているかをみることも可能。

ソフトを開いたら「Enter URL to spider」に対象サイトのルートURLを入力し、Startボタンをクリックしましょう。

今回はあえて、本ブログにリンク切れを作った状態で解析をしてみました。
画面の左側中央上部にURLの一覧がでてきており、現在は[Internal]タブになっています。これは解析を行なった対象のサイト内部のURLになります。

さっくりリンク切れを確認するには、InternalタブのままStatus Codeでソートを実施。(①)
404、302、301といったステータスが上にくるようにしましょう。

ここで404になっているURLは、どこかのページからそのURLへのリンクがあったものの、そのURLは存在していないという意味になります。

この/aaaaaaという404ページへのリンク元を探すには、まず画面の左側中央上部のURL一覧から当該URLを選択。
そうすると、画面左側下部にそのURLに関する情報が表示されます。一番下に情報切り替えタブがあるので[Inlinks]タブを選択しましょう。(②)

③に[Inlinks]の情報が表示されます。
ここの情報の意味は、「/privacy-policyページから/aaaaaaというページへのリンクがある」ということになります。
なので、/privacy-policyを修正すれば問題解消!

Screaming Frog SEO Spiderの使い方に関しては、こちらの記事が非常にわかりやすく参考にさせて貰いました。

Screaming Frog SEO Spiderの基本:概要、使い方と注意点

また、同じようにリンク先が旧パーマリンク構造のままの箇所は301になっているので、可能な範囲で新しいURLに修正したりしています。

修正ページ数が多ければ、Search Regexなどで対象を一括置換しましょう。

Search Regex

サイトマップ送信

6ステップ目。変更したページURLを検索エンジンに伝えます。
基本的にXMLサイトマップを使用してサーチコンソールに登録していれば時間経過で反映がされていきますが、登録されていない方や能動的に変更を通知したい場合は下記の方法があるそう。

通知方法には、以下のやり方があります。

  1. Googleサーチコンソールでサイトマップを再登録する
  2. サイトマップ更新通知URLにアクセスする
  3. プラグイン「Google XML Sitemaps」を使う

引用元:Googleサーチコンソールでサイトマップを登録する方法

特に早く変更を反映してもらいたいページはURLクロールリクエスト登録するのも手かもしれません。

経過観察

最後のステップ。サーチコンソールに登録している方は、1週間〜2週間ほど時間を置いて問題があがってないか状態を確認することをお勧めします。
変更した直後は一時的なガバレッジエラーが上がることもありますが、一週間ほどで落ち着いたり継続的な問題が見つかったりします。

まとめ

以上、大体この手順で問題なく切り替え作業できるなと現時点で行っている手順でした。
WordPressは初心者の人でも触りやすいけどパーマリンク構造の壁にぶち当たる人も多いと思うので、参考になれば幸いです。

以下の記事もよければどうぞ!

Permalink Redirectの代替案!途中のパーマリンク変更のリダイレクト設定を考える