1度構築した、WordPress サイトをわけ合って、別のドメインへ移行することとなった。MySQL データベースのEXPORT/IMPORTとか、いろいろ調べてトライしたが、環境が違うのか、うまくいかない。
そのときに行った作業をメモする。この方法は、MySQL データベースのEXPORT/IMPORTは使用しないでWordPressを移転する。
【期待する目標】
サーバー、ドメインの変更と同時に、ディレクトリの変更を行う。また、最新のWordPressのバージョンへアップグレードする。
環境その他条件:
・WordPress 3.4.2から3.5.1へアップグレードする。
・Mysql Version 5.5.13、PHP : Version 5.2.17
・旧サイト URL www.a.com/a1/
・新サイト URL www.b.com/b1/
作業の手順:
1.旧サイトからXML形式で記事、ページをエクスポートする
WordPressのダッシュボード左のメニューから「ツール」->「エクスポート」を選択し、「すべてのコンテンツ(投稿、固定ページ)」のエクスポートファイル(XMLファイル)をダウンロードしパソコンへ保存する。
2.FTPでテーマファイルをダウンロードする
FTPを使用して/wp-content/themes/ ディレクトリから使用しているテーマファイルをダウンロードする。
3.FTPで画像関連ファイルをダウンロードする
2.の操作と同様に/wp-content/uploads/ ディレクトリ内にある全てのファイルをダウンロードする。(旧サイト内にある全ての画像をパソコンへ保存。)
4.エクスポートした「すべてのコンテンツ(投稿、固定ページ)」内のドメインを旧サイトURLから新サイトURLへ変更する。
テキストエディタ等の一括置換機能を利用し、1.でエクスポートしたXMLファイル内の旧ドメインURLを新ドメインのものに全て置き換える。ここの例では、旧サイトURL「www.a.com/a1/ 」=>新サイトURL 「www.b.com/b1/」へ変更する
5.新サイトサーバーにWordPressをインストールする
新しいURLサイトのサーバーに最新WordPressをインストールします。普通に新規インストールする。
6.旧サイトテーマファイルを新サイトへアップロードする。
2. で作成したテーマファイルをFTPで/wp-content/themes/ ディレクトリへアップロードする。ダッシュボードの「概観」->「テーマ」よりテーマを有効にする。
7.変更したXMLファイルを新サイトへインポートする
4.でURLを変更したXMLファイルを、ダッシュボードの「ツール」→「インポート」→「WordPress」を選択し、新WordPressへアップロードする。その際に「画像をダウンロードする」といったチェックボックスは外しておく。
8.FTPで画像関連ファイルをアップロードする。
新しいサーバーの/wp-content/uploads/ ディレクトリに3. でダウンロードした添付ファイルをFTPで全てアップロードする。
9.WordPressの設定を行う
ここで旧サイトと同じようにWordPressの設定を行う。(旧サイトは完全に移行が完了するまで削除しないで、旧サイトを確認しながら作業する)
10.プラグインのインストール・設定
旧サイトにインストールしていたプラグインを新サイトにもインストールする、必要に応じて設定を変更します。旧サイトの /wp-content/plugins/ ディレクトリから一括ダウンロードし、新サイトにアップロードすることことは、避けたほうが良い。プラグインが正常に動作しない場合がある。
この一連の作業終了の後、新サイトの確認は必ず行うこと。
1点、注意: WordPressではメディアライブラリのデータをデータベースに紐づけて管理しています。したがって、画像ファイル /wp-content/uploads/をFTPでアップロードしてもメディアライブラリには表示されません。 記事、ページにはチャンと画像が表示されます。
「メディアライブラリには表示されない」問題については、解決に至っていない。良い方法が見つかったら、ここに紹介します。(新サイトの運営には特に問題なし)
以上、インターナット上にはいろいろな方法が紹介されているが、ほとんどうまく行かなかった。唯一、この方法で期待する結果を得られたのでメモすると同時に、この方法が一番確実に移行できると思う。