移行後やURLを変更したワードプレスがサイトにアクセスしたりログイン画面にアクセスすると古いドメインもしくは古いURLに移動(リダイレクト)してしまう問題を解決する方法を解説いたします。
この記事の目次
なぜ別のURLでワードプレスを稼働しようとしたら古いURLやドメインに移動してしまう?
ワードプレスには、wp_redirect()という関数が実装されており、ワードプレスに設定されたURLに応じて自動で移動するプログラムが含まれています。
この為、ワードプレスの設定URLが古いままの場合、新しいURLにワードプレスを設置したとしても古いURLに自動で移動してしまいます。
ワードプレスの設定URLを変更する
ワードプレスの設定されたURLを変更するには、ワードプレスの管理画面の設定>一般より WordPress アドレス (URL) と サイトアドレス (URL)を入力します。
ただ、一般的にはURL設定がすでにずれている場合は管理画面にアクセスすることも困難であるためこの方法でURLを変更できなくなっている上に、コンテンツ内のリンクや画像やそのほかのURL設定もすべてずれている為このURLずれは管理画面からは修正することができないかと存じます。
専用スクリプトを使用してワードプレスのデータベースに記録されているURLを一括置換
ワードプレスのURLは主に、データベースに書き込まれていますのでデータベース内に書き込まれているURLをすべて一括置換してずれを修正することで古いURLに移動してしまう事を防ぐことができます。
ただ、ワードプレスのデータは一部がシリアライズデータ という特殊なデータ方式で記録されている為、下記のような置換の為のSQL文をデータベースで実行するとデータベースのデータが壊れてしまう事がございます。
UPDATE テーブル名 SET 行=REPLACE(行, "置き換え前", "置き換え後") ;
参考
ワードプレスのデータベースのテーブルに記録されている特殊なデータ形式a: s:を含むシリアライズデータ
このシリアライズデータもデータを壊さずに一括置換してくれるスクリプト Search-Replace-DB を使用します。
Search-Replace-DBでデータベースを一括置換
Search-Replace-DB をダウンロードいただいたら、ZIPファイルを解凍しサーバーにFTPソフトウェアでアップロードしてそのファルダにブラウザーでアクセスします。
Search-Replace-DBの画面が表示されたら、データベース接続情報を入力の上接続し(Update Detailボタン)、置き換え前の文字列、置き換え後の文字列をを設定のうえ、実行ボタンを押すことでデータベースに記録されているURLの一括置換が可能です。
※データベース置き換え前にデータベースのバックアップをお取りいただくことをお勧めいたします。
WordPress ワードプレスサイトの安全な移行、URLに変更のご依頼・ご相談はWPドクターまでお気軽にお送りいただけましたら幸いです