Wordpress

【2025年版】WordPress本番→ローカル環境に移行する方法|失敗パターン5選・wp-cli自動化・トラブル対処法

【2025年版】WordPress本番→ローカル環境に移行する方法|失敗パターン5選・wp-cli自動化・トラブル対処法

はじめに

WordPressを既に本番環境で稼働している場合、テーマの変更やプラグインの追加などを行ってしまうと思わぬ不具合が起こり、サイトが止まってしまう可能性があります。
サイトの改修を行う時はローカル環境に本番環境をバックアップしてカスタマイズした後、再度本番環境に移行するのが安全です。
今回は本番環境からローカル環境にWordPressを移行する手順についてご説明します。

本番環境からローカル環境に移行するために必要なものをリストアップしてみました。

  1. FTPのログイン情報
  2. FTPのソフトウェア
  3. phpMyAdminのログイン情報
  4. パソコン内のローカル環境
  5. ローカル環境に設定するホスト名
  6. 本番環境のサーバーの情報
  7. 本番環境のWordPress本体
  8. 本番環境のsqlのデータ
  9. sqlデータを書き換えるためのエディタ
  10. WordPressのログイン情報
Wordpressをローカル環境で構築する方法(MAMP編)
WordPressローカル環境の作り方(MAMP)|30分で完了・図解28枚・エラー対処法付き本番サイトを触らずにWordPressをテストしたい方へ。MAMPを使ったローカル環境の構築方法を図解28枚で解説。データベースエラーやポート競合など、よくあるトラブルと解決法も完全網羅。所要時間約30分。...

WordPressサイト運営におすすめのレンタルサーバー

WordPressを本番環境で運用する際には、安定性とパフォーマンスに優れたレンタルサーバーの選択が重要です。以下、WordPress運用に最適なレンタルサーバーをご紹介します。

1. ConoHa WING – 国内最速の高性能レンタルサーバー

ConoHa WINGは国内最速の処理速度を誇る高性能レンタルサーバーです。WordPress簡単インストール機能や自動バックアップ機能も充実しており、初心者から上級者まで幅広く利用されています。

>> ConoHa WING公式サイトはこちら

ConoHa WINGの詳細レビューはこちら

2. エックスサーバー – 国内シェアNo.1の安定性

エックスサーバーは運用サイト数240万件以上を誇る国内シェアNo.1のレンタルサーバーです。高速性・安定性・セキュリティに優れ、24時間365日のサポート体制も充実しています。

>> エックスサーバー公式サイトはこちら

3. ロリポップ – コスパ最強の格安レンタルサーバー

ロリポップは月額220円から利用できるコストパフォーマンスに優れたレンタルサーバーです。低価格ながらWordPress運用に必要な機能は一通り揃っており、個人ブログや小規模サイトに最適です。

>> ロリポップ公式サイトはこちら

4. mixhost – 高速表示のクラウド型レンタルサーバー

mixhostはピュアSSDを採用したクラウド型レンタルサーバーで、高速表示とスケーラビリティが特徴です。アクセス集中時も安定した動作が期待でき、アダルトサイト運用も可能な柔軟性があります。

>> mixhost公式サイトはこちら

それぞれのレンタルサーバーには特徴があり、運用するサイトの規模や予算に応じて最適なものを選ぶことが大切です。

上記の中で各種ログイン情報、FTPのソフトウェア、パソコン内のローカル環境については事前に用意しておいてください。

ローカル環境については「WordPressをローカル環境で構築する方法(Local編)」の記事を参照してみてください。

上記の中にある「LOCAL by flywheel」を利用したローカル環境で説明します。
本番環境のWordPress本体やsqlデータについては記事内で説明しますのでご安心ください。

移行前に知っておきたい!よくある失敗パターン5選

WordPressの本番環境からローカル環境への移行は、慎重に進めないと思わぬトラブルに見舞われます。ここでは、実際によく発生する失敗パターンと、その回避方法を紹介します。

失敗パターン1: データベースの文字コード不一致

症状: 日本語が文字化けする、記事タイトルが「???」になる

原因: 本番環境のデータベース文字コード(通常はutf8mb4)と、ローカル環境のデータベース文字コード(utf8など)が異なる場合に発生します。

解決方法:

  • ローカル環境のデータベース作成時に、照合順序を「utf8mb4_unicode_ci」に設定
  • phpMyAdminでデータベース作成時に必ず確認する
  • すでに文字化けした場合は、データベースを削除して再作成

失敗パターン2: URLの置換漏れ

症状: 画像が表示されない、内部リンクが本番環境を指している

原因: データベース内のURLが本番環境のままになっている箇所が残っている。特に、カスタムフィールド、ウィジェット、テーマ設定などに多い。

解決方法:

  • Search Replace DBツール、または Better Search Replaceプラグインを使用
  • 以下のテーブルを重点的にチェック:
    • wp_posts(記事内容)
    • wp_postmeta(カスタムフィールド)
    • wp_options(サイトURL、ウィジェット設定)
  • 置換前に必ずバックアップを取る

失敗パターン3: .htaccessの設定ミス

症状: 「Internal Server Error」が表示される、リダイレクトループが発生する

原因: 本番環境の.htaccessに書かれたリダイレクトルールやSSL設定が、ローカル環境では不要または有害な場合があります。

解決方法:

  • ローカル環境では.htaccessを最小限の設定に書き換える
  • WordPressのパーマリンク設定を一度「基本」に戻してから再設定すると、.htaccessが自動生成される
  • 不要なリダイレクトルールをコメントアウト
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

失敗パターン4: メモリ不足エラー

症状: 「Fatal error: Allowed memory size…」というエラーが出る

原因: 本番環境で大量のデータ(画像、記事、プラグイン)を扱っているサイトを移行する際、ローカル環境のPHPメモリ制限が不足する場合があります。

解決方法:

  • wp-config.phpに以下を追加してメモリ上限を増やす:
define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');
  • Local by Flywheelの場合は、サイト設定でPHPバージョンとメモリ設定を確認
  • それでも解決しない場合は、データを分割してインポート

失敗パターン5: プラグインの互換性問題

症状: ログイン後に管理画面が真っ白、特定のページでエラーが出る

原因: 本番環境で動作していたプラグインが、ローカル環境のPHPバージョンやサーバー設定と互換性がない場合があります。特にキャッシュ系プラグインやセキュリティプラグインで多発します。

解決方法:

  • 移行前に本番環境でプラグインを一時的にすべて無効化してからエクスポート
  • ローカル環境で動作確認してから、1つずつプラグインを有効化
  • 問題のあるプラグインは代替品を探すか、設定を見直す

ファイルのダウンロード

今回はテーマをOnePressに設定し、下記のテスト用のデータを使っています。

GitHub – jawordpressorg/theme-test-data-ja
https://github.com/jawordpressorg/theme-test-data-ja

  • TinyMCE Advanced
  • Classic Editor
  • WordPress インポートツール

その他に上記3つのプラグインを導入している状態です。

まずは本番環境からWordPress本体をダウンロードします。
FTPに接続するユーザー情報はレンタルサーバー、またはお手元のサーバーで環境が違いますので、予め調べておきましょう。
本番環境側のディレクトリは任意かドメイン名になっているパターンが多いです。

また、説明する中で「 wp-test.com 」というドメインを表記していますが、仮のドメイン名となります。
「 wp-test.com 」の部分を適宜それぞれの本番環境のドメインに置き換えて読み進めてください。

今回はFTPソフトのFFFTPを利用してダウンロードしました。
FFFTPダウンロードページ:https://ja.osdn.net/projects/ffftp/

FTPのログイン情報を入力してサーバーに接続します。
スクリーンショットでは左側が手元のパソコン、右側がサーバーです。

WordPressのあるディレクトリを指定したら、すべて選択して、作業しやすいフォルダにダウンロードしてください。
ダウンロードが終わったら、バックアップを残しておきましょう。

この後に作業する中で元のデータがないという状況を避けることができます。

sqlデータのエクスポート

次にsqlのデータをエクスポートします。

本番環境のphpMyAdminにログインしてデータベースを開きます。

ローカル環境に移行するWordPressのデータベースをクリックして開いたら、次にエクスポートをクリックします。

エクスポートの画面に移動したら、そのまま実行をクリックするとsqlファイルがダウンロードされます。

本番環境での作業はこれで終了です。

Localに移行先のWordPressを作成する

次にLOCALを起動して移行先のWordPressを作成しましょう。

LOCALでWordPressを作成する最初の項目で「ADVANCED OPTIONS」をクリックして詳細メニューを開きます。

サイト名は本番環境と同じもので大丈夫です。次にLocal site domainの部分に任意のドメイン名(ホスト名)を入力したら、CONTINUEをクリックします。

この部分は説明のためにサイト名に「wordpress」、Local site domain「wp-test.com.local」と入力しました。

次にサーバーの環境を設定する項目が表示されます。ここで本番環境と同じ環境を選びましょう。

レンタルサーバーや手元のサーバーによってバージョンに違いがある可能性もありますので必ずチェックしてください。

次の画面でユーザー名とパスワード、メールアドレスを入力して「ADD SITE」をクリックしてください。

Localの左側のメニューに作成したサイト名が表示されたらOKです。

次にWordPressの上書きを行うために右上の「STOP SITE」をクリックして、一度WordPressを停止します。
「START SITE」に表示が切り替わたらサイト名の下あるフォルダ名の右の矢印をクリックしてください。

Localで作成したWordPressが格納されるフォルダが開かれます。サイト名に合わせて作られたフォルダを開いてください。
「app」をクリックして、次に「public」をクリックすればローカル環境のWordPressの本体があるフォルダが開かれます。

C:\Users\user\Local Sites\wordpress\app\public

LocalをCドライブにインストールし、サイト名に合わせて作成されたフォルダがwordpressなら上記の位置にWordPressの本体があります。適宜読み替えてフォルダを開いてください。

ここに本番環境からFTPでダウンロードしたWordPressの本体を移動して上書き保存しましょう。
これで本番環境のWordPressの本体がローカル環境に移行できました。

しかし、まだこのままではWordPressは正常に稼働しませんので注意してください。
次にwp-config.phpを編集します。

wp-config.phpの修正

C:\Users\user\Local Sites\wordpress\app\public\wp-config.php

上記のような形でエクスプローラーでローカル環境のWordPress本体にある「wp-config.php」を開きます。wordpressの部分を設定されたフォルダ名に読み替えてください。

// ** MySQL 設定 – この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define( ‘DB_NAME’, ‘wordpress’ );

/** MySQL データベースのユーザー名 */
define( ‘DB_USER’, ‘root’ );

/** MySQL データベースのパスワード */
define( ‘DB_PASSWORD’, ‘root’ );

/** MySQL のホスト名 */
define( ‘DB_HOST’, ‘localhost’ );

wp-config.phpを開いたら上記の箇所をローカル環境に合わせて編集します。

データベース名は本番環境と同じデータベース名にしておくと後でひと手間省けます。データベースについて詳しければ任意の文字列で大丈夫です。

ローカル環境がLOCAL by flywheelの場合はユーザ名とパスワードは「root」、ホスト名は「localhost」になります。

XAMPPやMAMPなど、他のソフトでローカル環境を作成している場合は、それぞれのデータベースにアクセスして新規でユーザー名を作成するか、既存の権限を持つユーザーのユーザー名とパスワードをメモして、wp-config.phpの内容に反映させてください。

次は本番環境からエクスポートしたsqlファイルの修正を行います。

sqlデータの修正

まずはエクスポートしたファイルを編集するためのエディタを開いてください。

任意のエディタで問題ありません。

エディタを起動したら開くからエクスポートしたsqlデータを選びます。

置換機能を使用して、検索する文字列に本番環境のURLを入力し、置換後の文字列にローカル環境のホスト名を入力します。

例えば置換前の文字列に「 http://wp-test.com 」と入力し、置換後の文字列に「 http://wp-test.com.local 」と入力します。

入力したらすべて置換をして、置換が終わったら保存してエディタを閉じましょう。

次にローカル環境のphpMyAdminを開いてデータベースを作成します。

ローカル環境にデータベースを用意

Localを起動し、WordPressを稼働している状態でDATABASEのタブをクリックし、ADMINERをクリックするとMySQLの管理画面にログインできます。

MAMPやXAMPPであればphpMyAdminなので表示画面が少々違いますが、手順についてはほぼ同じです。

データベースにログインしたら、まずはサーバをクリックしてください。

次にデータベースの作成をクリックしましょう。

データベースを作成の画面に移動したら左側の空白にデータベース名、右側は「 utf8_general_ci」を選択して、保存をクリックします。

データベースが作成されたら、左側にある「インポート」をクリックしてください。

sqlデータのインポート

画面が移動したらファイルをアップロードの方にある「ファイルを選択」をクリックして、本番環境からエクスポートして、テキストエディタで置換したsqlデータを選んでください。

sqlデータを選んだら実行をクリックすればインポートは終了です。

データベース周りで上手くいかない時の注意点

LOCAL by flywheelの場合、ローカル環境に移行するために最初にWordPressを構築する必要があります。

その際、初期状態のデータベースとして「local」があり、その中にWordPressを初めてインストールした状態のデータが存在しています。

環境による部分もありますが、このlocalのデータベースにそのままインポートした場合、エラーが発生しWordPressが起動できない現象が起こる可能性があります。

本番環境のデータベースがlocalになっており、そのままでも大丈夫かと思って作業してしまうとエラーによって思わぬ手間が増えることになるので、その時はlocalのデータベースを一度削除して、新しくlocalというデータベース名で作成しましょう。

また、localのデータベースにある既存のデータをすべて削除して、本番環境のsqlデータをインポートした場合、エラーは表示されなくてもWordPressが起動しないパターンもありました。

この記事も含めて、パソコン内にあるソフトウェアやOS、パソコン自体のスペックなどによって同じ作業をしても同じ結果が出ないことがあります。

上手くいかない場合は、まったく同じ環境だと考えずに、適宜置き換えて文字列の入力や設定を行うことや、自分が作業した手順に間違いがないかチェックしながら作業するようにしてみてください。

httpd-vhosts.confの設定

ローカル環境がLOCAL by flywheelであればhttpd-vhosts.confの設定する必要はありませんが、他のローカル環境の方のために設定方法を記載しておきます。

CドライブにインストールしたXAMPPを例にして設定してみます。

C:\xampp\apache\conf\extra

上記の位置フォルダにhttpd-vhosts.confがあります。

例えば今回のローカル環境で使用したホスト名を設定する場合は下記をhttpd-vhosts.confの末尾に記載します。

NameVirtualHost *:80

DocumentRoot “C:\xampp\htdocs\wp-test.com.local”
ServerName wp-test.com.local

C:\xampp\apache\conf

次に上記のフォルダにあるhttpd.confを開きます。

「# Virtual hosts」で検索して下記の部分を探します。

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

上記のように「Include conf/extra/httpd-vhosts.conf」の先頭に#がなければOKです。

もし「# Include conf/extra/httpd-vhosts.conf」といった形で#がある場合は先頭の#を削除して保存しましょう。

また、LOCAL by flywheelであればhostsの設定も不要ですが、他のローカル環境の場合はhostsの設定も変更する必要があります。

まずはhostsの場所を知っておきましょう。

PS C:\WINDOWS\system32\drivers\etc> notepad hosts

Windows PowerShellで作業する場合、上記の位置にhostsが存在しています。

  1. Windowsのスタートボタンを「右クリック」
  2. Windows PowerShell(管理者)をクリック
  3. PowerShellが開いたら「 cd .¥drivers¥etc¥ 」と入力してエンターキーを押す
  4. 「notepad hosts」と入力してエンターキーを押す
  5. hostsが開いたら末尾に127.0.0.1を入力しタブを2回押す
  6. ローカル環境で設定したホスト名を入力して保存
  7. メモ帳を閉じる
  8. PowerShellで「exit」と入力してエンターキーを押す

上記がWindowsでhostsを編集する手順です。

ポイントとしてはWindowsでhostsを編集する時は管理者権限でWindows PowerShellを起動する必要があること、コマンドプロンプトに慣れていないと戸惑ってしまう点です。

もし、意味がわからなかったり、理解できない部分がある時はひとつひとつの基本を調べながら作業するようにしてみてください。

なんとなく同じように作業しているつもりになっていると、思わぬところで間違っていることに気が付かず、上手くいかないことがあるからです。

また、参考とするサイトや記事の作成された日付によっては過去の情報だと気付かずに作業してしまうことで古い手順を繰り返し続けてしまい、結果として上手くいかないこともあるので注意しましょう。

.htaccessの修正

C:\Users\user\Local Sites\wordpress\app\public

LocalをCドライブにインストールして作業していた場合、.htaccessは上記の場所にあります。

エディタを開いて、ファイルを開くか、ドラッグ&ドロップで.htaccessを開いてください。

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

上記がWordPressに必要な個所であり、赤文字の部分がそれぞれ「RewriteBase /」と「RewriteRule . /index.php [L]」になっていれば変更する必要はありません。
レンタルサーバーや自前のサーバーの環境によって他にも記述されていることがありますが、誤って削除したり編集しないように注意してください。

また、作業前にバックアップを取ることも忘れないようにしましょう。

本番環境でドメイン直下のディレクトリにインストールされている場合は特に変更する必要はありませんが、例えば下記のように記載されている場合、ディレクトリ名を削除する必要があります。

# BEGIN WordPress
RewriteEngine On
RewriteBase /〇〇〇〇〇〇/
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /〇〇〇〇〇〇/index.php [L]
# END WordPress

〇〇〇〇〇〇/の部分を削除して保存します。逆にローカル環境から本番環境に移行する場合は削除したディレクトリ名を元に戻して、本番環境に合わせることを忘れないようにしましょう。

ローカル環境に移行したWordPressの表示・確認

LocalのADMINボタンをクリックするとログイン画面が表示され、無事にログインできました。

プラグインやテーマ、記事や固定ページについてもすべて移行できていることがわかります。

これで本番環境をローカル環境に移行し、カスタマイズや再構築がいつでも可能になりました。

定期的にバックアップを取ることで、WordPressが動かなかったり、不具合が起こった時にも元に戻せるようになります。

同時にカスタマイズした箇所や作業した手順を残しておくことで、何が原因で不具合やデザインが崩れたりしたのかわかりやすくなります。

ポイントとしては本番環境のWordPress本体のダウンロードと、sqlデータのエクスポートしておくことです。

例えば1ヶ月、2週間など定期的に保存しておいて、古いものから順に削除する体制などにしておけば非常に安心です。

よくあるエラーと解決方法

ローカル環境への移行中や移行後に遭遇しやすいエラーと、その具体的な解決方法を紹介します。

エラー1: 「データベース接続確立エラー」

エラーメッセージ: “Error establishing a database connection”

原因: wp-config.phpのデータベース接続情報が間違っている、またはMySQLサービスが起動していない。

解決手順:

  1. wp-config.phpを開き、以下の設定を確認:
define( 'DB_NAME', 'local' );      // ローカルのDB名
define( 'DB_USER', 'root' );       // Local by Flywheelの場合
define( 'DB_PASSWORD', 'root' );   // Local by Flywheelの場合
define( 'DB_HOST', 'localhost' );
  1. Local by Flywheelでサイトが起動しているか確認
  2. phpMyAdminでデータベースが存在するか確認

エラー2: 「404 Not Found」すべてのページで発生

症状: トップページは表示されるが、個別記事や固定ページにアクセスすると404エラー

原因: パーマリンク設定が正しく反映されていない、または.htaccessの設定ミス。

解決手順:

  1. WordPress管理画面で「設定」→「パーマリンク設定」を開く
  2. 何も変更せず「変更を保存」ボタンをクリック(これで.htaccessが再生成される)
  3. それでも解決しない場合は、.htaccessを削除してからパーマリンク設定を再保存

エラー3: 画像が表示されない(×マークやリンク切れ)

症状: 記事内の画像が表示されず、×印やリンク切れになっている

原因: データベース内のURLが本番環境のまま、またはuploadsフォルダのパーミッション問題。

解決手順:

  1. Better Search Replaceプラグインをインストール
  2. 「ツール」→「Better Search Replace」を開く
  3. Search for: https://本番環境のドメイン
  4. Replace with: http://ローカル環境のURL
  5. すべてのテーブルを選択(wp_posts、wp_postmetaは必須)
  6. 「Run Search/Replace」をクリック

注意: 本番環境がhttps、ローカルがhttpの場合は必ずhttps→httpに置換してください。

エラー4: 「Fatal error: Maximum execution time exceeded」

症状: データベースインポート中やプラグイン有効化時にタイムアウトエラー

原因: PHPの実行時間制限に引っかかっている。大規模サイトで発生しやすい。

解決手順:

  1. wp-config.phpに以下を追加:
set_time_limit(300); // 5分に延長
ini_set('max_execution_time', 300);
  1. Local by Flywheelの場合、サイトの設定でPHP設定を確認
  2. それでもダメな場合は、データベースを分割してインポート

エラー5: ログインループ(ログインしてもログイン画面に戻される)

症状: 正しいユーザー名とパスワードを入力しても、ログイン画面に戻される

原因: Cookie関連の問題、またはサイトURLとWordPress URLの不一致。

解決手順:

  1. ブラウザのCookieとキャッシュをクリア
  2. wp-config.phpに以下を追加:
define('WP_HOME', 'http://ローカル環境のURL');
define('WP_SITEURL', 'http://ローカル環境のURL');
  1. phpMyAdminでwp_optionsテーブルを開き、siteurlhomeの値を確認・修正
WordPress本番→ローカル移行トラブルシューティング・フローチャート
移行作業でエラー発生?
エラーの症状を確認してください
1
データベース接続確立エラー
  • Error establishing a database connection
  • ページが真っ白
解決方法:
1. wp-config.phpのDB設定確認
2. MySQLサービス起動確認
3. phpMyAdminでDB存在確認
2
すべてのページで404エラー
  • トップページ以外が404
  • 個別記事にアクセスできない
解決方法:
1. 「設定」→「パーマリンク設定」を開く
2. 何も変更せず「保存」をクリック
3. .htaccessを削除して再生成
3
画像が表示されない
  • 画像が×マーク
  • URLが本番環境のまま
解決方法:
1. Better Search Replaceプラグイン使用
2. 本番URL→ローカルURLに置換
3. wp_posts・wp_postmetaを重点確認
4
タイムアウトエラー
  • Maximum execution time exceeded
  • インポート中に停止
解決方法:
1. wp-config.phpに時間制限延長コード追加
2. set_time_limit(300)を設定
3. データを分割してインポート
5
ログインループ
  • ログイン後またログイン画面へ
  • 管理画面に入れない
解決方法:
1. ブラウザのCookie・キャッシュクリア
2. wp-config.phpにWP_HOME・WP_SITEURL追加
3. wp_optionsテーブルのURL確認
✓ 移行完了チェックリスト
□ ログインできる
□ 管理画面が表示される
□ すべてのページが表示される
□ 画像が正常に表示される
□ プラグインが動作している

wp-cliで自動化!移行作業を効率化する方法

手動での移行作業は時間がかかりますが、wp-cliを使えば多くの作業を自動化できます。ここでは、実際に使える便利なコマンドを紹介します。

wp-cliとは?

wp-cliは、WordPressをコマンドラインから操作できる公式ツールです。GUIでの作業を自動化でき、特に繰り返し作業や大量データの処理に威力を発揮します。

データベースのエクスポート(本番環境で実行)

# SSH経由で本番サーバーにアクセス
ssh ユーザー名@本番サーバーIP

# データベースをエクスポート
wp db export database-backup.sql

# エクスポートしたファイルをダウンロード
# (ローカル環境のターミナルで実行)
scp ユーザー名@本番サーバーIP:~/database-backup.sql ./

URLの一括置換(ローカル環境で実行)

# ローカル環境のWordPressディレクトリに移動
cd /path/to/local/wordpress

# URL置換(ドライラン:実際には変更しない)
wp search-replace 'https://本番環境.com' 'http://local.test' --dry-run

# 問題なければ本番実行
wp search-replace 'https://本番環境.com' 'http://local.test'

# すべてのテーブルで置換する場合
wp search-replace 'https://本番環境.com' 'http://local.test' --all-tables

データベースのインポート

# データベースをインポート
wp db import database-backup.sql

# インポート後、管理者ユーザーのパスワードをリセット
wp user update 1 --user_pass=新しいパスワード

プラグインの一括無効化・有効化

# すべてのプラグインを無効化
wp plugin deactivate --all

# 必要なプラグインのみ有効化
wp plugin activate plugin-name

# プラグイン一覧を確認
wp plugin list

キャッシュのクリア

# オブジェクトキャッシュをクリア
wp cache flush

# リライトルールをフラッシュ(パーマリンク再生成)
wp rewrite flush

これらのコマンドを組み合わせれば、移行作業を大幅に短縮できます。

プラグイン互換性チェックリスト

ローカル環境に移行した後、すべてのプラグインが正常に動作するとは限りません。以下のチェックリストを使って、プラグインの互換性を確認しましょう。

移行前の準備

1. プラグインリストを記録

  • 本番環境で有効化されているプラグインの一覧をメモ
  • 各プラグインのバージョン番号も記録
  • WordPress管理画面の「プラグイン」→「インストール済みプラグイン」からコピー

2. 本番環境でプラグインを無効化

  • 移行前に、すべてのプラグインを一時的に無効化
  • これにより、プラグインが原因のエラーを回避できる
  • 特に以下のプラグインは要注意:
    • キャッシュ系(WP Rocket、W3 Total Cacheなど)
    • セキュリティ系(Wordfence、iThemes Securityなど)
    • CDN連携系(Cloudflare、JetPackなど)

移行後の確認手順

1. 段階的にプラグインを有効化

  • 1つずつプラグインを有効化して動作確認
  • エラーが出た場合は、そのプラグインを無効化して原因を特定
  • 優先順位: 必須プラグイン → 便利系プラグイン → 装飾系プラグイン

2. ローカル環境で動作しないプラグイン例

以下のプラグインはローカル環境で正常に動作しない場合があります:

  • 外部API連携系: Google AnalyticsダッシュボードなどAPIキーが必要なプラグイン
  • メール送信系: SMTP設定が本番環境専用の場合
  • CDN系: CloudflareやBunnyCDNなど外部サービス連携
  • 決済系: Stripe、PayPalなど本番環境のAPIキーが必要
  • SNS連携系: FacebookやTwitterの自動投稿プラグイン

3. 代替プラグインの検討

ローカル環境専用の軽量プラグインに置き換えることで、動作を軽くできます:

本番環境 ローカル環境(代替)
WP Rocket なし(キャッシュ不要)
Wordfence Security なし(セキュリティ不要)
Cloudflare なし(CDN不要)
Google Analytics for WordPress Query Monitor(デバッグ用)

よくある互換性問題と解決方法

問題1: プラグインが有効化できない

  • PHPバージョンが古い可能性 → Local by Flywheelで最新PHPに変更
  • 必須ライブラリが不足 → エラーメッセージを確認して対応

問題2: プラグイン設定が引き継がれない

  • プラグインの設定はwp_optionsテーブルに保存されている
  • データベースのインポートが正しくできているか確認
  • 一部プラグインは設定ファイルを別途エクスポート/インポートする必要あり

問題3: メール送信が機能しない

  • ローカル環境ではSMTPサーバーが動作していない場合が多い
  • テスト用に「WP Mail Logging」プラグインを使用してメール内容を記録
  • MailHog(Local by Flywheel標準装備)でメールをキャッチ

確認完了のサイン

以下がすべてクリアできれば、プラグイン互換性チェック完了です:

  • ☐ すべてのプラグインが有効化できた
  • ☐ 管理画面でエラーが表示されない
  • ☐ フロントエンドで機能が正常に動作している
  • ☐ ローカル環境専用の設定に切り替えた
  • ☐ 不要なプラグインは無効化した

📝 追加のヒント

タイミングの最適化
移行作業は、本番サイトのアクセスが少ない時間帯(深夜など)に行うと、データの整合性が保ちやすくなります。

バックアップの重要性
移行前に必ず本番環境のバックアップを取得しましょう。UpdraftPlus、BackWPup、All-in-One WP Migrationなどのプラグインが便利です。

セキュリティ設定の見直し
ローカル環境では、本番環境のような厳格なセキュリティ設定は不要です。開発効率を優先して、必要最小限の設定にとどめましょう。

WordPressをパワーアップ!おすすめプラグイン13選
【2025年版】WordPressおすすめプラグイン13選|目的別に厳選!初心者向け設定ガイド付き【2025年最新】WordPress初心者向けに厳選したおすすめプラグイン13選を目的別に解説。SEO対策、セキュリティ、速度改善、バックアップなど必須プラグインの設定方法とよくある失敗の回避策を紹介します。...

まとめ

本番環境からローカル環境に移行する手順を作業する時、何度も同じ手順を繰り返したり、間違いやミス、エラーなどで悩むことがあるでしょう。

上手くいかない原因は「参考とする手順が間違っている」か、「自分の作業している手順が間違っているか」ことが考えられます。

また、参考とするサイトや記事の情報の鮮度、作業環境の違いによっても上手くいかないことがあります。

同時に、記事を作成する人の「当たり前の知識や経験」は人それぞれですので記載されていない部分がわからないことも多々あるでしょう。

WordPressの作業に限らないことですが、自分がどんな手順で作業したか残しておくこと、あくまでも参考とする記事やコンテンツについては「参考」程度に考えるようにすることが大切です。

ローカル環境と本番環境の移行が双方向で行えるようになれば、サイトやサービスの運営や維持が簡単になります。

わからないことをわかるように知識と経験を増やしながら、柔軟に学んでいく姿勢を忘れないようにしてみてくださいね。

移行完了後にやるべきこと

Wordpressサイトを高速化する方法
【2025年版】WordPressサイトを3秒→1秒に高速化する方法13選|難易度別・コアウェブバイタル対応WordPress表示速度を3秒→1秒に改善する13の方法を難易度別に解説。画像最適化、キャッシュ、サーバー移行など、初心者でも実装できる具体的な手順とツールを紹介。コアウェブバイタル対応で SEO順位向上も。PageSpeed Insights 90点以上を目指す完全ガイド。...
【簡単!】すぐにできる!WordPressのセキュリティ対策
【2025年版】WordPressセキュリティ対策完全ガイド|初心者でもできる11の方法+おすすめプラグイン5選WordPressセキュリティ対策の完全ガイド。ハッキングリスクを80%削減する11の方法を難易度別に解説。2025年最新プラグイン5選、サーバーWAF比較、実際の攻撃事例も紹介。初心者でも今すぐ実践できる具体的手順で、あなたのサイトを守りましょう。...