見出し画像

【初心者向け】AWSで運営中のWordPress記事の文言を一括置換する最速手順

【初心者向け】AWSで運営中のWordPress記事の文言を一括置換する最速手順

~バックアップから置換まで完全解説~

はじめに

WordPressサイトの運営をしていると、「全記事の中で特定の文言をまとめて書き換えたい!」という状況がよく起こります。たとえば「30日間無料→14日間無料」など、長期キャンペーンの期間表記が変わる場合などですね。

しかし、記事が1,000や1万以上あると、ひとつひとつ手作業で直すのはほぼ不可能……。そこで活躍するのが、WordPressのコマンドラインツール「WP-CLI」による一括置換です。

本記事では、AWS Lightsail+Bitnami版WordPressを例に、SSHでサーバーへ入り、データベースをバックアップして、一気に検索置換する手順を初心者向けに解説します。

個人情報に関する注意
この記事内では、特定のIPアドレスや個人を特定する情報を含んでいた箇所を伏せ字にしており、実際の環境とは異なるIPやパスを使っています。みなさんご自身の環境に合わせて読み替えてください。


この記事のゴール

  • WP-CLIを使って、WordPressの全記事中の特定文字列を一括で置換できるようになる

  • 置換前後のバックアップと**テスト(--dry-run)**で、安全に作業する流れを理解する

  • 文字化けの対処や、よくあるエラーの回避方法を把握する


前提条件

  • WordPressAWS Lightsail 上の Bitnami環境 で動いている

  • SSH接続し、root権限またはBitnami専用のスクリプトを使ってWP-CLIが利用可能

  • 置換したい文言例:

    • 「30日間の無料お試し期間」→「14日間の無料お試し期間」

    • (任意のフレーズでもOK)

本手順は他のホスティングサービスでも概ね同じですが、Bitnami特有の権限設定で少し注意が必要です。


STEP 1:SSH接続とroot権限取得

  1. Lightsail管理画面にアクセスし、対象のWordPressインスタンスを選択

  2. Connect using SSH」などのボタンを押し、ブラウザでSSH接続

    • ローカルPCのターミナルから .pem キーで接続してもOK

  3. 接続後、ターミナルの表示例:

bitnami@ip-xxx-xxx-xxx-xxx:~$
  1. rootユーザーに切り替え

sudo su

メモ
Bitnamiでは、通常の bitnami ユーザーだとWP-CLI実行時に「Please run this script as a superuser」などのエラーが出る場合があります。
そこで sudo su でrootに切り替え、コマンドに --allow-root を付ければエラーを回避できます。


STEP 2:WordPressディレクトリへ移動

BitnamiのWordPressは多くの場合、

cd /opt/bitnami/wordpress

に配置されています。ls コマンドで wp-config.php があるか確認し、この中でWP-CLIを実行しましょう。


STEP 3:データベースのバックアップを取得

誤置換してしまうと取り返しがつかない場合があるので、必ずバックアップを取ります。

wp db export before_replace.sql --allow-root
  • before_replace.sql というファイルが /opt/bitnami/wordpress に作成されます。

  • 失敗時は wp db import before_replace.sql --allow-root で復元可能。


STEP 4:置換したい文字列をテスト(--dry-run)

本番で一括置換する前に、「どれくらいヒットするか」を確認するのがおすすめです。
たとえば、「30日間の無料お試し期間 → 14日間の無料お試し期間」に書き換える例:

wp search-replace '30日間の無料お試し期間' '14日間の無料お試し期間' --dry-run --allow-root
  • --dry-run を付けると実際には書き換えず、件数やテーブルを表示してくれます。

  • 結果が 0 件の場合は文字列やスペースが合っていないのかも。ヒット数が想定より多いなら検索文字列をもう一度確認しましょう。

文字化けメモ
ブラウザSSHだと日本語が文字化けして見えることがありますが、コマンドそのものはUTF-8で処理されていれば問題ありません。--dry-run の結果が正常なら大丈夫です。


STEP 5:本番置換

テスト結果OKなら、いよいよ本番です。

wp search-replace '30日間の無料お試し期間' '14日間の無料お試し期間' --allow-root
  • 終了後、置換されたレコード数やテーブル数が表示されます。

  • 変更内容が多い場合、処理に少し時間がかかることもあります。


ここから先は

1,488字

¥ 500

この記事が気に入ったらチップで応援してみませんか?