WordPressで作ったサイトのサーバーを変更したり検証環境の複製時など、「All-in-One WP Migration」や「Duplicator」などのお引越しプラグインを利用してお引越しをすることがあるかと思います。
これらのプラグインを利用してのお引越しができればいいのですが、場合によってはお引越しプラグインを利用したお引越しができないこともままあります。お引越しプラグインでのお引越しがうまくできないよくある例としてはこんな感じでしょうか…。
- お引越し元のサーバー環境が貧弱すぎてタイムアウトしてしまった
- 登録されている記事や画像が多すぎる
- レンタルサーバーのプラン的に作成できるDBが1こしかないため、お引越ししたいサイト以外の登録情報がわんさかDBに登録されていて処理が終わらない
- 複製先のサーバーの環境上、アップロード上限に引っかかってしまった
- 複製先のレンタルサーバーの環境上、エクスポートしたファイルのアップロードや展開がうまくできなかった
簡単にまとめると、サーバー環境がよくなかったり制限が多かったりする場合、うまくお引越しができないという問題が発生しがちです。こういった環境でも動いてくれるお引越しプラグインを探す旅に出たり、お引越しプラグインの有料版や有料エクステンションを利用する、というのもひとつの手なのですが、お引越し元・複製先のどちらかがあまりにも貧弱なサーバー環境だったりすると、有料版でもうまくいかないこともしばしば…(もちろんやってみたらうまくいくこともありますが、すでにうまくいっていないプラグインを更に課金して試す勇気はなかなか出ないものです…)
そういった時の最後の手段、それが手動でのお引越しです。
手動でのお引越しをするにあたって必要な条件
最後の手段ですが、どんな環境でも必ずお引越しができる!というわけではありません。お引越し元・複製先ともに、下記が利用できることが前提です。
- FTPソフトを使ったファイルのアップロード/ダウンロード(Web FTP等でも可)ができること
- phpMyAdminなどを使ったMySQL・MariaDBのデータベースのエクスポート/インポートができること
最近はサーバーの管理画面からWordPressがワンクリックでインストールできたりするので、どちらも触らずにWordPressの運用をされている方もいらっしゃるかもしれませんが、もし利用できるかわからない場合、借りているサーバーの管理画面などに記載されていることが多いです。
多くのレンタルサーバーではphpMyAdminを始めとしたデータベース管理ツールが入っているのですが、一部のレンタルサーバーやVPSでは入っていないことがあります。そういう時はWordPressの管理画面上からphpMyAdminを利用できるようにするプラグイン「WP phpMyAdmin」を利用するとお手軽にphpMyAdminが利用できて便利です。
手動でのお引越し手順
やることひとつひとつは実はそこまで複雑ではありませんが、ステップ数としてはちょっと多いかもしれません。
落ち着いて作業できれば1時間ていどでお引越しが可能です。
- お引越し元サイトの/wp-content以下のファイルをFTP経由でダウンロードする
- お引越し元サイトのデータベースをphpMyAdminなどを利用してエクスポートする
- 複製先にWordPressをインストールする
- 1でダウンロードしたファイルを複製先の/wp-content以下にFTP経由でアップロードする
- 2でエクスポートしたファイルを編集する
- 5で編集したファイルを複製先のデータベースにphpMyAdminなどを利用してインポートする
- 複製先のWordPressのwp-config.phpを編集して、インポートした内容を参照できるようにする
- 動作確認
それではステップごとに詳しく見ていきましょう!
やることはそのままです!FTPで繋いでファイルをダウンロードしていきます。
/wp-contentがすぐに見つからないよ~!という場合は、とにかくそのサイトのディレクトリ内のファイルを全部ダウンロードしてきてから探しましょう…!(ファイルの整理がちゃんとされていなかったり、WordPressのインストールディレクトリがroot以外になっている場合などうまく見つけられないことはままあります)
もしエクスポートしたいデータベースと同一データベース内に他のWordPressサイトで利用しているテーブルが含まれるようであれば、エクスポート時にエクスポートしたいテーブルだけを選択してエクスポートをしましょう。エクスポート時のオプションを「簡易」ではなく「詳細」とすることでテーブルの選択が可能です。
WordPressをインストールする際にデータベースの接頭辞をお引越し元サイトのデータベースで利用しているものとは違う接頭辞にしてインストールするのがポイントです。
接頭辞以外のユーザーの設定などは、あとからお引越し元サイトの内容に上書きしてしまうのでかなり適当で大丈夫です。
お引越し元サイトのインストールディレクトリがサブディレクトリになっている(/wp以下になっているなど)場合、基本的には複製先のインストールディレクトリも同じようにサブディレクトリになるように統一しておきましょう。ディレクトリ名も統一しておきます。
サブディレクトリへのインストールのしかたはこちらの記事が詳しいです。
やむを得ない事情で複製先のインストールディレクトリをサブディレクトリにできなかったり、サブディレクトリのディレクトリ名を統一できない場合は、5でファイルをインポートする前にSQLファイル内のファイルパスの一括置換えが必要になります。
これもそのまんまです。
デフォルトテーマなど、同じファイルがある場合もあるので、原則上書きアップロードでOKです。がんがんアップロードしましょう!
2でエクスポートしたファイルをそのままインポートしてしまうと、画像や内部リンクなどのファイルパスのURLがお引越し元サイトを参照してしまうかたちになっているので一括置換えを行います。
sqlファイルをUTF-8が開けるテキストエディタで開いて、お引越し元サイトのURLを複製先のURLに一括置換えを行いましょう。
3でインストールディレクトリをサブディレクトリにできなかったり、サブディレクトリのディレクトリ名を統一できなかった時はこのタイミングで一緒に置換えを行います。例えばお引越し元サイトで/wpのディレクトリにインストールされていたけれど、複製先では/cms以下にインストールする場合は「/wp/」を「/cms/」になるように置き換える、といった感じです。
いよいよデータベースをインポートします!
複製先のphpMyAdminなどからデータベースをインポートします。3で接頭辞を変更してあれば、データベースのテーブルが上書きされずに2サイト分入っているような景色になるかと思います。そうなっていればOKです!
複製先のwp-config.phpの接頭辞を設定する箇所を、元サイトで利用していたものと同じになるように編集します。
編集したら保存→アップロードします。
無事、お引越しが完了できているかブラウザでアクセスして確認しましょう!
一発でうまくいくこともあれば、なにかがうまくいっていなくてうまく表示されないこともあります。一発でうまく言った場合はおつかれさまでした!これにてお引越し完了です!
一発でうまくいかなかった…という方向けに、下記うまくいかない場合あるあるパターンと解決方法を軽くまとめます。
- アクセスしてすぐにお引越し元サイトのドメインに転送されてしまう
-
「WordPress アドレス (URL)」「サイトアドレス (URL)」の設定がお引越し元サイトになっている可能性があります。複製先のphpMyAdminで「wp_options」テーブルの設定が複製先のURLになっているか確認してみましょう。
また、編集後も同じブラウザでアクセスするとお引越し元サイトに転送されてしまうことがあります。その場合はPCのDNSキャッシュを削除することで正しくアクセスできるようになります。
DNSキャッシュをクリアするには(Windows、Mac、Chrome) 404エラーが発生しましたか?原因はDNSの変更である可能性があります。本記事では、すべての人気のあるOS及びChromeブラウザのDNSキャッシュをクリアする手順をご紹介しま… - テーマが崩れてしまっている、エラーが表示されている
-
お引越し元サイトのサーバーの環境と異なる環境に複製した場合、利用しているテーマが対応しているPHPのバージョンにあわず、テーマが崩れてしまうことがあります。今利用しているテーマフォルダを削除すると自動でデフォルトテーマがあたるようになるので、一旦今利用しているテーマフォルダを削除してみましょう。その後、落ち着いて利用しているテーマが複製先のサーバー環境で利用できるかを確認し、対応しているバージョンのテーマをインストールし直すと動くことが多いです。
- サイト上にエラーが出ている・管理画面にエラーが出ている
-
上記、テーマの問題でない場合、テーマの問題同様、プラグインが複製先のサーバー環境に適応していない可能性があります。一旦プラグインをすべてオフにし、ひとつひとつオンにしてどのプラグインがエラーを出しているか確認しましょう。こちらも落ち着いて対応しているかを確認し、対応しているバージョンのプラグインをインストールすれば問題なく動くことが多いです。
エラーが出ていたり、挙動がおかしいぞ!というときはまず落ち着くことが肝心です。
その上で、なんかどうしてもぶっ壊れている!という場合はファイルをアップロードした際・データベースをインポートした際にファイルが壊れた可能性もありますので、4以降のステップを落ち着いてもう一度やってみるとうまくいくかと思います。
と、ここまで見てもらうとわかるかと思いますが、手動でのお引越し、地味に大変です。便利なお引越しプラグインたちはこれらのステップのほとんどを自動でやってくれて本当にありがたい限り…。
もし、どうしてもどうしてもお引越しプラグインで複製ができない…!という時は、手動でのお引越し、ぜひお試しください。