WordPressを旧サーバから新サーバに引っ越ししたり、テスト環境で作ったのを本番に持ってくる際、ドメインが変わる場合はURLの書き替えが必要になります。
今までは
DBからテーブルをおとしてくる
↓
エディタでURLを旧→新、へ一括置換する
↓
書き換えたテーブルを新サーバに取り込む
といったような流れでやっていましたが、
そうすると、新環境でWordPressをあけてもウィジェットが・・・ない?!
DBのwp-optionsを見てみると、データは入っているのに、
管理画面で見てもウィジェットがないのです。
をかもとさんのブログを読んでいたら、
どうも、エディタの一括置換は不用意なデータ変換をしてしまうようで、これが原因だったみたい。
http://dogmap.jp/2012/09/20/wordpress-replace-siteurl/
これはなんとかならんもんか、と思ったら良いツールが紹介されているのを見つけました。
↓
http://webcre-archive.com/2012/10/04/wordpress-db-url-replace/
リンク先に詳しく書いてあるのですが、自分の復習も兼ねて改めて書いてみる。
1. バックアップツールやDBから、旧サイトのWordPressデータをDLしておく。(URLはそのまま!書き換えなくて良い)
2. Search and Replace for WordPress Databases Scriptから変換用のスクリプトをDLする。
3. 上記を解凍すると「searchreplacedb2.php」ができるので、新サーバのWordPressがインストールされているディレクトリにアップする
4. http://新サイト/wpのインストールディレクトリ/searchreplacedb2.php にアクセスする
5. そのまま、特になにかチェックをいれることなく進み、「What to replace?」と聞かれたら、「serach for」に旧サイトのurl、「replace with」に新サイトのurlを入れる。
6. 書き替え完了!searchreplacedb2.phpは削除しておく
その後、新しくインストールしたWordPressの管理画面を見てみると、ちゃんとウィジェットがついてきてます。
中に書き込んでるURLもきちんと変換されてます( ・∀・)やったね