WordPressの開発環境をローカルに構築する際に使用されるwp-envですが、DBデータをエクスポート、他の開発者に共有してインポートしてもらうといったことをする場合は、wp-envコマンドで簡単に行うことが可能です。
本記事では、wp-envでsqlファイルをエクスポート、インポートする方法について解説します。
-
【WordPress】wp-envを使ってローカル開発環境を構築する方法
続きを見る
エクスポート、インポート用のフォルダを作成
まず最初にsqlファイルを管理するためのフォルダを、自作テーマフォルダ、.wp-env.jsonファイルと同階層に作成します。
mkdir sql
作成したsqlフォルダは、エクスポートした際に格納されるフォルダとして、インポートする際にフォルダ内から選択する役割を持ちます。
現状のディレクトリ構成は以下のような形です。
├── wp_theme // 自作テーマフォルダ
├── .wp-env.json // wp-envの設定ファイル
└── sql // sqlファイルを格納するフォルダ
.wp-env.json編集
.wp-env.jsonに以下の内容を追加します。
"mappings": {
"wp-content/themes/wp_theme/": "./wp_theme/",
"sql": "./sql" // 追加
},
先程作成したsqlフォルダをdockerコンテナ内とマッピングします。
これにより、コンテナ内にsqlフォルダが作成され、ローカルにsqlファイルがエクスポートされた場合は、コンテナ内のsqlフォルダにもsqlファイルがマウントされるといった相互同期的な環境を整えることができます。
エクスポート
エクスポートするには、作成したsqlフォルダがある階層に移動し、以下のコマンドを実行します。
wp-env run cli wp db export sql/database.sql
成功すると以下のようにメッセージが表示され、sqlフォルダ内にdatabase.sqlがエクスポートされます。
ℹ Starting 'wp db export sql/database.sql' on the cli container.
Success: Exported to 'sql/database.sql'.
✔ Ran `wp db export sql/database.sql` in 'cli'. (in 3s 244ms)
また、エクスポートした日時をファイル名に含めることで、どのファイルが最新かを認識しやすくすることもできます。
wp-env run cli wp db export sql/$(date +\%Y\%m\%d\%H\%M\%S)-database.sql
インポート
インポートする場合は、以下コマンドにインポートしたいsqlファイルを含める形になります。
wp-env run cli wp db import sql/20241202221241-database.sql
インポートが成功すると以下のようにメッセージが表示されます。
ℹ Starting 'wp db import sql/20241202221241-database.sql' on the cli container.
Success: Imported from 'sql/20241202221241-database.sql'.
✔ Ran `wp db import sql/20241202221241-database.sql` in 'cli'. (in 1s 952ms)
まとめ
ここまで読んでいただきありがとうございました。
今回はwp-envで構築したWordPress開発環境のDBデータのエクスポート、インポートの方法を書きましたが、投稿ページや固定ページ、プラグインの設定など他の開発者と合わせたい場合などは、こちらを参考にしてみてください。
一部だけデータベースの内容を編集したい場合は、直接データベース接続を行い内容を確認しつつ変更を行う必要がある場合は、wp-envで作成したWordPress開発環境のデータベース情報をDBクライアントツールに接続して、直接編集する方法も以下で記事にしていますのでよろしければ参考にしてください!
-
【WordPress】wp-env環境でデータベース情報をデータベースクライアントツールに接続する方法
続きを見る