WordPressでのサイト開発で面倒なのが、ローカルで開発したサイトをサーバー上にアップロード(デプロイ)する時。テーマファイルのアップロードだけなら簡単ですが、設定を変えたときや固定ページなどを絡めた場合は、簡単にはサーバーと同期をする事ができません。
そんなデプロイ作業に、WordMoveというツールが超便利でした。
筆者の場合は、VCCWに同梱されていたWordMoveを利用したので、こちらで解説します。
VCCWをセットアップ
まずは、VCCWをセットアップします。先に、Vagrant環境を整える必要があるので、このあたりは他のブログなどを参照してください。
ZIPをダウンロードするか、gitからクローンします。
git clone git@github.com:miya0001/vccw.git
Vagrantfileを整えて、vagrant upをすればサーバーが起動して、「http://wordpress.local」でアクセスできます。
cp Vagrantfile.sample Vagrantfile
vagrant up
WordMoveの環境を整える
続いて、WordMoveを使ってみましょう。設定ファイルは、vccwをセットアップしたフォルダに「Movefile」という設定ファイルがあります。
上部に定義されている「local:」の方は、すでに設定が整えられているため、その下にある「staging:」の方をデプロイしたいサイトに合わせて書き換えます。下記は、Hetemlを FTP経由で使った場合の例です。
staging:
vhost: "http://h2o-space.com"
wordpress_path: "/web/h2o-space.com/www" # use an absolute path here
database:
name: "_xxx"
user: "_xxx"
password: "xxxxxx"
host: "mysqlxxx.heteml.jp"
...
ftp:
user: "xxx"
password: "xxx"
host: "ftpxx.heteml.jp"
passive: true
...
「ftp:」という項目は、コメントアウト(行頭に #)されていますが、これを消すときに先頭の空白も消さないように気をつけましょう。頭に半角空白2つがないと、エラーになります。
WordMoveを起動
これで準備は完了です。Vagrantに SSHで接続し、Vagrantのファイル群が格納されているフォルダに移動します。
vagrant ssh
cd /vagrant
そして、WordMoveを起動します。すべてのファイル・DBをデプロイするなら「push –all」です。
wordmove push --all
かなり時間がかかりますが、ファイルからデータベースまでをアップロードしてくれます。
その後、サーバー上で変更を加えたりしたものを、開発環境に持ってきたい場合は「pull」します。
wordmove pull --all
データベースなど、差分だけのアップロードの場合は「–db」などとオプションを変えます。
wordmove push --db
ヘルプを見れば、オプションは分かります。
Options:
-w, [–wordpress], [–no-wordpress]
-u, [–uploads], [–no-uploads]
-t, [–themes], [–no-themes]
-p, [–plugins], [–no-plugins]
-l, [–languages], [–no-languages]
-d, [–db], [–no-db]
-v, [–verbose], [–no-verbose]
-s, [–simulate], [–no-simulate]
-e, [–environment=ENVIRONMENT]
-c, [–config=CONFIG]
[–no-adapt], [–no-no-adapt]
[–all], [–no-all]
これは非常に便利です。2015年の開発環境にはすべて導入していこうと思います。
コメントを残す