WordPressのサイト制作では、ローカル環境で修正した内容を本番環境に反映したり、本番環境のデータをローカルに取り込んだりする作業が発生します。
以前はFTPを使って必要なファイルを手動でアップロードしていましたが、最近はDockerで作ったローカル環境と本番サイトの同期に「Wordmove」を使っています。
実際に使ってみると便利な一方で、操作を間違えると本番環境に影響する怖さもありました。
今回は、Wordmoveを使って感じたメリットと注意点をまとめます。
Wordmoveとは
Wordmoveは、WordPressのローカル環境と本番環境の間で、データを同期するためのツールです。
主に次のデータを操作できます。
WordPressのテーマ
プラグイン
アップロード画像
データベース
WordPress本体
たとえば、本番環境のデータベースをローカルに取り込む場合は、次のようなコマンドを使用します。
wordmove pull -d
テーマだけを本番環境へ反映する場合は、次のように実行します。
wordmove push -t
Docker環境でWordmoveを動かしている場合は、環境によって次のようなコマンドになります。
docker compose run --rm wordmove wordmove pull -d
FTPソフトを開いてファイルを探す作業を、コマンドでまとめて実行できるのが大きな特徴です。
メリット1:本番環境をローカルに再現しやすい
Wordmoveを使って特に便利だと感じたのは、本番環境のデータをローカルに取り込みやすいことです。
WordPressサイトは、テーマファイルだけをダウンロードしても同じ状態にはなりません。
記事や固定ページ、各種設定はデータベースに保存され、画像はuploadsフォルダに入っています。そのため、本番環境に近い状態を作るには、複数のデータを取り込む必要があります。
Wordmoveなら、データベースや画像をそれぞれ指定して取得できます。
wordmove pull -d
wordmove pull -u
これによって、本番サイトに近い状態で表示や動作を確認してから修正できるようになりました。
メリット2:必要なデータだけを同期できる
Wordmoveでは、同期する対象を分けて指定できます。
たとえば、テーマだけを本番環境に反映したい場合は、テーマだけをpushできます。
wordmove push -t
画像だけを取り込みたい場合は、uploadsを指定します。
wordmove pull -u
すべてのデータを毎回同期する必要がないため、作業内容に合わせて必要な部分だけを操作できます。
「テーマを修正しただけなのに、データベースまで上書きしてしまう」といったリスクを減らせるのもメリットです。
メリット3:FTPでの手作業が減る
FTPでファイルをアップロードする場合、対象のフォルダを探し、変更したファイルを選択して反映する必要があります。
ファイル数が少なければ問題ありませんが、修正箇所が増えるとアップロード漏れや選択ミスが起こりやすくなります。
Wordmoveなら、決められたコマンドでテーマ全体を反映できます。
手作業が減ることで、毎回同じ手順で反映しやすくなりました。作業を仕組み化できる点は、継続的にサイトを保守する場合に大きなメリットだと思います。
メリット4:Gitと役割を分けて管理できる
私は、テーマファイルの変更履歴をGitとGitHubで管理しています。
WordmoveとGitは似ているように見えますが、役割は異なります。
Gitは、ファイルの変更履歴を管理するためのものです。一方、Wordmoveは、ローカル環境と本番環境のデータを同期するためのものです。
私の場合は、次のように使い分けています。
ローカル環境でテーマを修正する
表示や動作を確認する
Gitに変更履歴を残す
GitHubへpushする
Wordmoveでテーマを本番環境へ反映する
Wordmoveを使ったからといって、Gitが不要になるわけではありません。
変更履歴を残すGitと、本番環境へ反映するWordmoveを組み合わせることで、以前より安全に作業できるようになりました。
注意点1:pushとpullを間違えると危険
Wordmoveで最も注意しなければならないのが、pushとpullの違いです。
pull:本番環境からローカル環境へ取り込む
push:ローカル環境から本番環境へ反映する
特に危険なのは、データベースを間違えてpushすることです。
本番環境では、お問い合わせや記事、管理画面の設定などが更新されている可能性があります。古いローカルデータベースを本番環境にpushすると、それらを上書きしてしまう恐れがあります。
コマンドを実行する前に、「どこからどこへ動かすのか」「何を同期するのか」を必ず確認する必要があります。
注意点2:実行前のバックアップは必要
Wordmoveは便利ですが、操作ミスを完全に防いでくれるわけではありません。
特に本番環境へpushする場合は、事前にバックアップを取っておくことが重要です。
最低でも、次のデータは復元できる状態にしておいた方が安全です。
データベース
テーマファイル
アップロード画像
「コマンドが正常に終了したから問題ない」とは限りません。反映後に表示崩れや設定変更が発生する可能性もあります。
本番反映前のバックアップと、反映後の表示確認はセットで考える必要があります。
注意点3:設定ファイルの取り扱いに注意する
Wordmoveでは、接続先の情報をMovefileに設定します。
設定内容によっては、次のような重要な情報が含まれます。
FTPやSSHの接続情報
データベース情報
サーバーのパス
本番サイトのURL
これらの情報を記載したファイルを、そのまま公開リポジトリへpushするのは危険です。
環境変数を利用したり、機密情報を記載したファイルを.gitignoreの対象にしたりするなど、認証情報を公開しない対策が必要です。
Wordmoveを導入することだけでなく、接続情報をどう管理するかまで考えなければなりません。
注意点4:同期後のURLや環境差を確認する
本番サイトとローカル環境では、URLやサーバー設定が異なります。
WordmoveにはURLを書き換える仕組みがありますが、設定が正しくなければ、ローカル環境で本番URLへ転送されたり、画像が表示されなかったりすることがあります。
また、次のような環境差でも問題が発生します。
PHPのバージョン
WordPressのバージョン
プラグインの状態
サーバー固有の設定
ファイルの権限
データを取り込めたことと、サイトが正常に動くことは別です。
同期後はトップページだけでなく、固定ページやお問い合わせフォーム、管理画面なども確認する必要があります。
注意点5:Wordmoveだけに頼らない
Wordmoveは同期作業を効率化するツールですが、変更履歴を管理するツールではありません。
Wordmoveで本番環境に反映したあとに問題が起きても、過去のファイルが自動的に残っているとは限りません。
そのため、次の仕組みを組み合わせることが重要です。
Gitによる変更履歴の管理
サーバーやプラグインによるバックアップ
ローカル環境での動作確認
本番反映後のチェック
Wordmoveを使えばすべて安全になるのではなく、安全に運用するための手段の一つとして考える必要があります。
まとめ
Wordmoveを使い始めて、本番環境とローカル環境の同期作業はかなり楽になりました。
特に、テーマ・データベース・画像を個別に指定できるため、FTPだけで管理していた頃よりも作業手順を整理しやすくなりました。
一方で、pushとpullを間違えたり、古いデータベースを本番環境へ反映したりすると、大きなトラブルにつながります。
Wordmoveは便利ですが、気軽にコマンドを実行してよいツールではありません。
私自身、現在は次の流れを意識しています。
本番環境のバックアップを取る
同期する対象を確認する
ローカル環境で修正する
Gitに変更履歴を残す
必要なデータだけを本番環境へ反映する
反映後のサイトを確認する
仕組みを理解したうえで使えば、WordPressの制作や保守を効率化できる便利なツールです。
これからも操作に慣れるだけでなく、安全に運用できる手順まで整えていきたいと思います。