こんにちは tahara です。
WordPress ってどうして http:// からのフルパスで URL を DB に格納しちゃうんでしょうか? 開発環境で構築した WordPress サイトを本番環境にリリースするとき泣きたくなります。
プラグインによっては s:81:\"http://...." のような形式の文字列長付きで保持している場合もあるため、sed もできません。
泣きながら検索してみれば、ちゃんと Moving WordPress « WordPress Codex に書いてありました。
「Search and Replace for WordPress Databases Script」を使えと。
s:81:\"http://...." のような文字列長付きのものも、日本語まじりのものも綺麗にリプレースしてくれます。 なんてすばらしい。
使い方は簡単。
- WordPress Serialized PHP Search Replace Tool | Interconnect IT - WordPress Consultants, Web Development and Web Design から searchreplacedb21.zip をダウンロードする。
- searchreplacedb21.zip を解凍し searchreplacedb2.php を WordPerss サイトのドキュメントルートに置く。
- http://www.example.com/searchreplacedb2.php にアクセスする(www.example.com は環境に合わせてください)。
- あとは画面にしたがって、DB 上の任意の文字列をリプレースすることができます。 ドメインが変わる場合等は「Leave GUID column unchanged? 」にはチェックを付けない方がいいです。 付けるとリプレースされないものがたくさん残ってしまいます。
- リプレース作業が終ったら searchreplacedb2.php を消す。 消さないとだれでもあなたの DB を書き換えることができてしまいます。
最後に、弊社ではシステムエンジニア、プログラマ、インフラエンジニアなどを募集しています。 おきがるにお問い合わせください。