WordPressのサイトURLを変更したいってときDBのURL含んでるデータ一括置換やるよね
WordPressで本番環境からローカルの開発環境(あるいは逆)へ移行したり、サイトの引っ越しだったり、常時SSL化にともなってhttpからhttpsでアクセスできるようにしたり、というのでDB内のデータに含まれるURLを一括置換かけたくなるときは結構ある。
一括置換の方法はいくつかあるが、個人的にはSearch-Replace-DBか、WP-CLIのsearch-replaceコマンドを使う(WordPressのDBにはシリアライズされたデータも含まれているため、安易にSQLで値をUPDATEするのは避けたほうが良い)。
Database Search and Replace Script in PHP | interconnect/it
wp search-replace | WordPress Developer Resources
Search-Replace-DBは英語なので、辛いときはこことか見ると使い方わかりやすいんじゃないかと思う。
WordPressサイトのドメイン一括置換には「Search Replace DB」が良い!
wp search-replace
コマンドを使う場合は、最初にWP-CLIをインストールしておく。
Command line interface for WordPress | WP-CLI
基本は wp search-replace [old] [new]
のようなコマンドなのだけど、まず最初に --dry-run
を付けて実行するようにしたほうがいいと思う。
$ wp search-replace 'http://example.com' 'https://example.com' --dry-run
--dry-run
は、もし置換を実行したらどうなるか、というのを試しにやって結果を表示してくれる。
実際には置換されないので、これでチェックをしてから --dry-run
を外して実行すればいい。