本番環境のWordPressの記事データをローカル環境に持って来ようと思ったら呆気なかった話
昨日、WordPressのテーマ変更などのテストや調整のために、本番環境の記事データをローカル環境へ持ち出しましたので、今回はそのお話です。
結論から言うと、標準に搭載されている機能ですっごく簡単に実現できちゃいました。
あまりにも呆気なくできてしまったので、記事にするのもどうかと思うくらいですが…一応記事に残しておこうと思います。
始めはSQLでデータを流そうとしていた
本番環境の記事データをローカルへ持ってくる方法として、始めに考えたのは、
“本番環境のSQLデータをダンプして、ローカルに持ってきて復元する方法”でした。
ただ、それだけだとメディア(画像)データが取り残されてしまうので、
メディアが格納されている ./wp-content/uploads 内のデータも tar.gz などで凝縮させてローカルに持ってこようかなぁ〜と思っていました。
で、実際に作業をしようと思いましたが……
よく考えたら、そのままSQLでデータを流し込んでしまうと、WordPressの基本設定などのデータも変更されてしまいますよね〜
それをやってしまうと、ローカル環境のデータの整合性が取れなくなって、壊れてしまいます。(たぶん)
それは流石に面倒臭い。
なので、次に記事データの部分だけSQLで流す方法を考えました。
そして、実際に必要なテーブルは何かな〜と調べたのですが…
複数のテーブルが必要でそれはそれで面倒だし、それで上手くいくのかも確信が無い……
なので、他に方法が無いのか調べる事にしました。
標準機能にあるエクスポート&インポート
他の方法について少し調べると、投稿データのエクスポート&インポート機能というがありました。
どうやら、WordPressの標準で搭載している機能で実現できるっぽい…
と言う訳で、早速やってみました。
本番環境での作業 エクスポート
まずは、本番環境のWordPressにて ツール -> エクスポート を選択。
今回は、投稿データと合わせてメディアデータも持ってきたいので、"すべてのコンテンツ"を選択して、エクスポートを実行。
これで、xmlファイルがダウンロードされると思います。
ローカル環境での作業 インポート
続いて、ローカル環境でのインポート作業に移ります。
エクスポートと同様に、ローカル環境のWordPress上で ツール -> インポート を選択します。
すると、下の様な画面になるので、"WordPress"の"インポーターの実行"を選択します。
この時に、"インポーターの実行"が表示されず、"今すぐインストール"が表示されている場合は、先にインストールを実行しましょう。
続いて、先ほどダウンロードしたxmlファイルを選択して、アップロードします。
最後に、流し込む記事の投稿者を選択して、インポートを実行!
はい、これでローカルへの記事の流し込み完了です。
作業完了
これで無事に、メディア(画像)データも記事データも本番環境と同じものが流し込まれていると思います。
注意しなければいけないのは、元々ローカル環境にあった記事はそのまま残っている点でしょうか。
今回の方法は、データのインポート(追加)を行っただけですからね。
完全に置き換えたい場合は、専用のプラグインがあるみたいなので、それを使うと良いらしいですよ。
おわりに – WordPressは機能がいっぱい –
実際にやってみれば分かりますが、本当に呆気なく記事を持ってくることができました。
WordPressは本当に色々な機能が付いてますねぇ〜。
色々ありすぎて、全てを把握するのは難しそうです。
まぁ、地道に必要な時に、必要な機能を見つけて学んでいきましょう!
将来的には、DBの構成も勉強して、自分でプラグインとか開発できる様になれたら良いなぁ〜
ディスカッション
コメント一覧
まだ、コメントがありません