WordPressのSearch&Replaceで一括置換する方法

WordPressのSearch&Replaceで一括置換する方法

WordPressの一括置換が必要になる場面

WordPressサイトを運用していると、データベース内の文字列を一括で置換する必要が出てきます。主に以下のようなケースです。

  • サーバー移転・ドメイン変更によるURL変更
  • HTTP → HTTPSへの移行(常時SSL化)
  • 会社名・サービス名の変更
  • 電話番号・住所などの全ページ修正

これらを手動で修正するのは現実的ではありません。専用ツールを使った一括置換が必須になります。

結論:Better Search Replaceを使うのが安全

WordPressの一括置換は「Better Search Replace」プラグインを使うのが最も安全です。シリアライズデータに対応しており、URL置換でもデータ破損のリスクを最小限に抑えられます。

一括置換の手順(失敗しないやり方)

  1. 必ずデータベースのバックアップを取得する
  2. 「Better Search Replace」をインストール・有効化
  3. ツール → Better Search Replace を開く
  4. 検索・置換文字列を入力する
  5. 対象テーブルは基本すべて選択
  6. ドライラン(テスト実行)で件数を確認
  7. 問題なければ本番実行

特にドライラン → 本番実行の流れは必須です。いきなり本番実行すると取り返しがつかないケースがあります。

なぜ普通の置換ではダメなのか(重要)

WordPressのデータベースには「シリアライズ形式」という特殊なデータ構造が使われています。

a:1:{s:3:"url";s:22:"http://example.com/top";}

この形式では文字列の長さもデータとして保存されています。そのため、単純なSQL置換やphpMyAdminでの置換を行うと、文字数のズレによりデータが破損します。

Better Search Replaceはこの構造を理解して処理するため、安全に置換が可能です。

URL置換時のチェックポイント

  • http → https の完全一致で置換する
  • wwwあり・なしの両方を確認する
  • サイトURL / ホームURL(設定 → 一般)も確認
  • 置換後に全ページの表示チェックを行う

置換後の確認項目(必須チェック)

  • トップページが正常に表示されるか
  • 投稿・固定ページが崩れていないか
  • 画像URLが正しく表示されているか
  • 管理画面が正常に動作するか
  • メニュー・ウィジェットに異常がないか

また、キャッシュプラグインを使用している場合は、必ずキャッシュを削除してください。

WP-CLIでの一括置換(上級者向け)

SSH接続が可能な環境では、WP-CLIで高速かつ安全に置換が可能です。シリアライズデータにも対応しています。

wp search-replace 'http://example.com' 'https://example.com' --all-tables

大規模サイトではプラグインよりもWP-CLIの方が高速で確実です。

注意:古いプラグインは使用しない

「Velvet Blues Update URLs」は過去に広く使われていましたが、現在は開発が止まっており非推奨です。シリアライズ対応が不完全なため、データ破損のリスクがあります。

まとめ

WordPressの一括置換は便利ですが、方法を誤るとサイト全体が壊れるリスクがあります。必ずバックアップを取り、安全なツールを使って慎重に作業してください。

大規模な置換や本番環境での作業に不安がある場合は、専門業者への依頼も検討してください。

WordPressのトラブルやホームページのお悩みはRevitにご相談ください

LINEで無料相談 フォームで問い合わせ