WordPress All-in-One WP Migration を使ってデータを移行
簡単に WordPress のデータを移行できるプラグイン「All-in-One WP Migration 」の使い方についての覚書です。
「All-in-One WP Migration 」はボタンをクリックするだけで WordPress のデータ(テーマのファイルやデータベース、画像など)をエクスポート及びインポートできる便利なプラグインです。
更新日:2022年03月12日
作成日:2020年01月16日
WordPress のデータの移行
WordPress で作成したサイトのデータの移行はデータベースをエクスポートして移行先の環境に合わせてデータベースの内容を置換したりと手間のかかる作業で、例えばサーバーからローカル環境へのデータの移行の場合、以下のような作業が必要です。
- サーバーのデータベースをエクスポート
- データベースファイルの編集
- ローカル環境のデータベースにインポート
- wp-config.php の編集
- .htaccess の編集
「All-in-One WP Migration」と言うプラグインを使えば、プラグインをインストールしてボタンをクリックするだけでデータの移行が完了し、上記のような作業は必要ありません。サイトの移転に伴うデータの移行やローカル環境からサーバーへのデータの移行がとても簡単に行なえます。
関連ページ:WordPress ローカル環境設定(プラグインを使わないデータの移行)
おおまかな手順
移行元と移行先の WordPress に「All-in-One WP Migration」をインストールする必要があります。以下がおおまかな手順です。
- 移行元の WordPress に「All-in-One WP Migration」をインストール
- 移行元にインストールした「All-in-One WP Migration」を使ってデータをエクスポート
- 移行先に WordPress をインストール
- 移行先の WordPress に「All-in-One WP Migration」をインストール
- 移行先にインストールした「All-in-One WP Migration」を使ってデータをインポート
「All-in-One WP Migration」を使ってデータをエクスポートすると「xxxxxx.com-20200116-070254-712.wpress」のような拡張子が「.wpress」のデータが入ったファイルをダウンロードすることができます。移行先ではこのファイルを「All-in-One WP Migration」を使ってインポートすることでデータを移行することができます。
ログインIDとパスワード
移行先でデータをインポートするとユーザー情報も移行元の情報に上書きされるので、移行元の管理画面へのログイン名(管理者 ID)とパスワードを確認しておき、必要に応じてメモなどしておきます。
※ 以下では、移行元の WordPress が最新のバージョンで問題なく動作すること、移行先には最新のバージョンの WordPress をインストールすることを前提にしています。
古いバージョンを使った WordPress を使って試していないのでわかりませんが、もしかしたら移行先の WordPress のバージョンを合わせたり、使用する「All-in-One WP Migration」のバージョンもそれに合わせる必要があるかも知れません(未確認)。
All-in-One WP Migration のインストール
まずは、データをコピーする移行元のサーバーの WordPress に「All-in-One WP Migration」をインストールします。
もし WordPress が最新のバージョンでない場合は、万が一に備えてバックアップを取ってから最新バージョンに更新します。
管理画面の「メインナビゲーションメニュー」の「プラグイン」をクリックしてプラグインの画面で「新規追加」をクリックします。
キーワードボタン横の入力欄(プラグインの検索...)に「All-in-One WP Migration」と入力してプラグインを検索します。
「All-in-One WP Migration」が表示されるので「今すぐインストール」をクリックします。
インストールが完了したら、有効化をクリックします。
有効化が完了すると「メインナビゲーションメニュー」に「All-in-One WP Migration」が表示されます。
データをエクスポート
「All-in-One WP Migration」のインストール及び有効化が完了したら、WordPress のデータをエクスポートします。
「メインナビゲーションメニュー」の「All-in-One WP Migration」をクリックするとエクスポートの画面が開きます。
「エクスポート先」をクリックします。
「エクスポート先」をクリックすると、エクスポート先のオプションが表示されるので「ファイル」をクリックします。
FTP や DROPBOX などに直接エクスポートするには、有料版の「All-in-One WP Migration」を購入する必要があります。
データのエクスポートが開始されます。
エクスポートにかかる時間は、ファイルの数やサイズ、サーバーなどにより異なりますが、ファイル数が多ければそれだけ時間がかかります。
エクスポートが完了すると「○○○をダウンロード サイズ:○○ MB」と表示されるので、その部分をクリックします。
「xxxxxx.com-20200116-070254-712.wpress」のような名前のファイルがダウンロードされます。
ファイル名は「ドメイン名-(インストールディレクトリ)-日付-数値-数値.wpress」のようになっているのでどのサイトのものかやいつ作成したものかがわかりやすくなっています。
ダウンロードが完了したら「閉じる」をクリックして、ウィンドウを閉じます。
ファイルをダウンロードする前にウィンドウを閉じてしまっても、バックアップ画面からエクスポートしたファイルをダウンロードすることができます。
高度なオプション
「高度なオプション」を指定しない場合、全てのデータ(画像、テーマのファイル、データベース、プラグインのファイル)がエクスポートされます。
「高度なオプション」を指定することで、特定のデータを除外することができ、エクスポート(インポート)するデータを小さくすることができます。
無料の「All-in-One WP Migration」では 512MB まではインポートできるようですが、それ以上の場合は有料のバージョンを購入する必要があるようです。
「高度なオプション」を指定して「画像」を除外することでデータのサイズを小さくすることができます。
画像(アップロードした画像)を除外するには、「メディアライブラリをエクスポートしない」にチェックを入れて、「エクスポート先」の「ファイル」をクリックします。
この場合、移行先でデータをインポートした後に、自分で画像(wp-content/uploads 内の画像)をアップロードする必要があります。
このサイトの場合、全てをエクスポートすると 185MB でしたが、メディアライブラリを除外するとサイトは 48MB になりました。
テーマのファイルも自分で後からアップロードするなら、「テーマをエクスポートしない」にチェックを入れることで更にサイズを小さくすることができます。
移行先に WordPress をインストール
移行先に WordPress をインストールします。
インストールする際、管理者名(ログインID)とパスワードは移行元と同じにします(データをインポートすると移行元の情報で上書きされます)。
サイトが表示されることを確認します(設定をしたりデータを入れる必要はありません)。
関連ページ: WordPress のインストール
移行先で「All-in-One WP Migration」をインストール
移行先にインストールした WordPress にログインして、管理画面のプラグインのページから「All-in-One WP Migration のインストール」と同様に「All-in-One WP Migration」をインストールします。
インポート
インポートの処理では、移行元でエクスポートしたファイルを指定します。
インポート完了後、ログインする際には移行元の管理者IDとパスワードが必要です。
また、インポートするファイルのサイズによりアップロードファイルサイズを変更する必要があります。
インポート画面
「メインナビゲーションメニュー」の「All-in-One WP Migration」から「インポート」をクリックします。
以下のようなインポート画面が表示されます。
使用している環境での「最大アップロードファイルサイズ」が表示されています。初期状態では 8MB になっているかも知れません。
エクスポートしたファイル(つまりインポートするファイル)のサイズにより、最大アップロードサイズを変更する必要があります。
「最大アップロードファイルサイズを上げる方法」のリンクをクリックすると、以下のようなページが表示され、その方法が記載されています。
サーバーの環境などによって、利用できる方法が異なるので環境に合わせて方法を選択して必要に応じて最大アップロードファイルサイズを変更します。
最大アップロードファイルサイズの変更
「最大アップロードファイルサイズを上げる方法」には以下のような方法があります(この他にも wp-config.php を使う方法などもありますが試していません)。
.htaccess を使って変更
ローカル環境(MAMP)の場合は、「1. Update .htaccess file」に記載されている方法で最大アップロードファイルサイズを変更することができました。
サーバーによっては、この .htaccess によるアップロードサイズの変更ができない場合があります(今回試した本番のサーバーでは NG でした → php.ini で変更)。
WordPress をインストールしたディレクトリの .htaccess を編集します。
以下は最大サイズを256MBに変更する例です。
# 以下の5行を追加 php_value upload_max_filesize 256M php_value post_max_size 256M php_value memory_limit 512M php_value max_execution_time 300 php_value max_input_time 300 # 以下は WordPress が自動的に更新する部分 # BEGIN WordPress # `BEGIN WordPress` から `END WordPress` までのディレクティブ (行) は # 動的に生成され、WordPress フィルターによってのみ修正が可能です。 # これらのマーカー間にあるディレクティブへのいかなる変更も上書きされてしまいます。 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wp/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wp/index.php [L] </IfModule> # END WordPress
必要に応じてそれぞれの値を調整します。
- upload_max_filesize :1つのファイルアップロードに許可される最大サイズ
- post_max_size :POST データに許可される最大サイズ(1回のアップロードでの全ての合計サイズ)
- memory_limit :メモリ使用量の制限
- max_execution_time :スクリプトの実行時間の最大値(秒)
- max_input_time :アップロードにかかる時間の最大値(秒)
ファイルサイズとメモリサイズの関係は以下のようになっているようです。全部同じ数値でも問題ないと思います。
upload_max_filesize(小さい) < post_max_size < memory_limit(大きい)
php.ini を使って変更
php.ini の場所はサーバーにより異なるので確認する必要があります。ホームディレクトリや public_html に置かれている場合が多いかも知れません。
以下はホームディレクトリの下の www ディレクトリにある例です。
以下は php.ini を編集してアップロードファイルサイズを 256MB に変更する例です。必要に応じて max_execution_time や max_input_time も指定します(特にサイズが大きい場合)。
以下の項目の値を必要に応じて変更します。
memory_limit = 256M post_max_size = 256M upload_max_filesize = 256M
プラグインを使って変更
.htaccess や php.ini を使って変更ができない場合は、プラグインを使って 512MB にアップロードファイルサイズを変更することができます。
但し、WordPress のプラグイン管理画面から検索しても見つからないようなのでダウンロードしてインストールする必要があります。
前述のページ(How to Increase Maximum Upload File Size in WordPress)に記載されている「4. Use plugin」のリンク(https://import.wp-migration.com)をクリックすると以下のページが表示されます。
Basic For sites < 512MB(無料版)の「Download」をクリックします。
「all-in-one-wp-migration-file-extension.zip」という zip ファイルがダウンロードされます(解凍する必要はありません)。
WordPress のプラグイン管理画面で、プラグインの追加「プラグインのアップロード」をクリックします。
「ファイルを選択」をクリックして、ダウンロードしたファイル「all-in-one-wp-migration-file-extension.zip」を指定します。
「今すぐインストール」をクリックします。
「プラグインを有効化」をクリックします。
有効化が完了したら「All-in-One WP Migration」をクリックします。
インポート画面で「Maximum upload file size: 512 MB」となっていれば完了です。
インポート
インポート画面で「インポート元」をクリックして「ファイル」を選択します。
インポートするファイルを選択するウィンドウが表示されるので、エクスポートしたファイルを選択して「開く」をクリックます。
インポート(ファイルのアップロード)が開始されます。
以下が表示されるので、確認して「開始」をクリックするとインポート処理が開始されます。
インポート処理が完了すると、以下が表示されます。
「完了」をクリックし、ログイン画面が表示されれば再ログインして投稿などが問題なく移行されているか等を確認します。
上記ウィンドウの「パーマリンク構造を保存する」をクリックすると「パーマリンク設定」が別画面で開くので必要に応じて確認・更新(何も変更せずに「変更を保存」をクリック)します。
バックアップ画面
「All-in-One WP Migration」のバックアップ画面から過去にエクスポートしたファイルをダウンロードすることができます。
ファイル名の横のダウンロードアイコンにカーソルを合わせると「ダウンロード」と表示されるのでクリックしてダウンロードすることができます。
不要なファイルは右端の X のアイコンをクリックして削除することが可能です。
真ん中の「復元」のアイコンは有料版でのみ機能する復元用のボタンです。
このウィンドウに表示されているようにエクポートしたデータをインポートすることで「バックアップ → 復元」となり、エクスポートしたファイルはバックアップファイルとして利用できます。