wordpressでURL変更後に記事の更新ができなくなる事象の解決方法
目次
背景
wpのサイトアドレス (URL)を変更した
問題の切り分け
- chromeなどブラウザをシークレットモードで開く
- いつも通りに記事の更新を試してみる
これで問題なく記事の更新ができた場合は、ほぼほぼchromeのキャッシュが原因です。
そうでない場合は、DBを書き換える必要があるかもしれません。
解決方法
chromeのキャッシュの場合
右上の縦三点リーダーをクリックし、設定へ
プライバシーとセキュリティの閲覧履歴データの削除を選択
閲覧履歴データの削除から、期間は全期間を選択して、Cookieやキャッシュを選択します
データの削除を押して、再度自身のサイトから記事の更新を試みてください
問題なく更新できるはずです。
DBの書き換えが必要な場合
Search-Replace-DBを利用してDBの中身を書き換えます。
Search-Replace-DBのgithubにアクセスし、codeボタンからdownload ZIPを選択
https://github.com/interconnectit/Search-Replace-DB
zipを解凍したらwp-adminフォルダがあるディレクトリに配置します。
配置出来たら以下のような感じで配置された場所にアクセスします。
https://your_site_url/Search-Replace-DB-master/
- replace "変更前のURL" with "変更後のURL"を記載
- database name、username、pass、hostを指定(wp_config.phpに記載されている)
- Do a safe test run
- 変換するテーブルを選択
- Search and Replace
- delete meの順番で行います
database name、username、pass、hostを指定(wp_config.phpに記載されている)
記載した後にTest connectionで接続できるか試しましょう
Do a safe test run
これを押すと実際には書き換えは発生せず、search結果だけがでてきます。
この結果を見ながら変換するテーブルを選択しましょう
※少なくともwp_optinos
のテーブルは書き換えてはいけない。wordpressアドレスまで書き換えてしまう可能性があり、サイトにアクセスできなくなる。万が一replaceしてしまって、サイトにアクセスできなくなったら、wp_optinosのhome
の値をもとに戻せばなんとかなるはず
Search and Replace
上記していできたら、「Search and Replace」で変換実施
delete me
delete meでSearch-Replace-DB-masterを使用できなくします。
これをしないと外部からDBを書き換えられる危険性が増します。
念には念を入れてdelete meをした後配置した「Search-Replace-DB-master」のフォルダごと削除しておきます。
以上です。DB書き換えても、更新できない場合は再度キャッシュのクリアなど試してみてください。