wordpressでイメージなどを挿入するとそのURLがドメイン付きのフルパスになっていて、サイトを移動すると、古いドメインを参照してしまう。投稿の内容はmysqlの中にあるのでこれを変換する手段。
変換
mysqlのデータ構造はいろいろつくられているが変更する必要があるのはテーブルwp_optionsやwp_postsでいいと思う。よって以下のクエリーを実行して書き換える。
1 2 |
UPDATE wp_options SET option_value = REPLACE(option_value, 'old.site.example.com', 'new.site.example.com'); UPDATE wp_posts SET post_content = REPLACE(post_content, 'old.site.example.com', 'old.site.example.com'); |
old.site.example.comが古いドメインでold.site.example.comが新しいドメイン。ディレクトリ階層が異なることは想定していない。
クエリーはやり直しがきかないのでバックアップ必須。