WordPress用のVagrant環境「VCCW」に、最近いくつかの新機能を加えましたので、まとめて紹介します。
なお本日現在のVagrantの最新版1.6は、Vagrant側の不具合により動作しませんので、1.6.1のリリースを待っていただくか、1.5.4を使用してください。
There is a terrible regression for CentOS and Fedora guests in Vagrant 1.6.0. Fixed in 1.6.1 (not released yet, very soon). Sorry.
![]()
— Mitchell Hashimoto (@mitchellh) May 6, 2014
はっきりとアナウンスしていませんでしたが、Windows環境でも動作します。
改善
サイトを作りましたー。
ただし英語です。今後細かいアップデートは以下のサイトでアナウンスしていきます。
vagrant-hostsupdaterプラグインについて
Windowsユーザーさんから、hostsファイルに対する書き込み権限に関する質問がすごーく多かったため、ひと思いにこのプラグイン無しでも動くようにしました。笑
Boxの変更
Boxをchef/centos-6.5-i386
というやつに変えました。
Vagrantfileを以下のように変えていただくと64bit版のCentOSにすることもできますので、64bitのOSをご利用の方はそのほうがプロビジョニングが数分早く完了するようです。
修正前:
VM_BOX = "chef/centos-6.5-i386" # for 32bit
# VM_BOX = "chef/centos-6.5" # for 64bit
修正後:
# VM_BOX = "chef/centos-6.5-i386" # for 32bit
VM_BOX = "chef/centos-6.5" # for 64bit
Windowsのサポートについて
現在のVCCWはWindowsでも動作確認ができています。
ただし、msysgitなどの一部のWindows用のGitクライアントが、git clone
などをする際に改行コードをCRLFに変換してしまうらしく、その場合はChefのクックブックを実行する際にエラーが出ます。
Gitクライアントの設定を変更いただくか、以下のサイトから.zip
をダウンロードして、そこからvagrant up
してください。
新機能
WordPress i18n Tools
テーマやプラグインの翻訳をしたいときに.pot
というファイルを作る必要があるんですが、これを使用すると以下のようなコマンドを使用するだけで簡単に作成できます。
$ cd /var/www/wordpress/wp-content/themes/some-theme
$ makepot.php wp-theme .
PoeditのPro版でも同じぐらい簡単に作れますが、Poeditではプラグインやテーマのメタ情報の抽出まではサポートしていませんが、この方法ならそれらも抽出することが可能です。
Gruntテンプレートをプリインストール
プラグインやテーマの開発を超簡単に始めるためのGruntテンプレートをプリインストールしました。
$ cd /var/www/wordpress/wp-content/plugins
$ mkdir my-plugiun
$ cd my-plugin
$ grunt-init hatamoto
最後のgrunt-init hatamoto
を実行すると、プラグイン名などの入力を求めるプロンプトが表示されます。
それらに答えていくだけで、プラグインの元ネタが自動的に生成されます。
テーマなら以下のような感じ。
$ cd /var/www/wordpress/wp-content/themes
$ mkdir my-theme
$ cd my-theme
$ grunt-init iemoto
テーマは_sベースのテーマが自動的に生成されます。
詳しくは以下のサイトを御覧ください。
PHPUnitのプリインストール
PHPUnit及びWordPress用のUnitテストフレームワーク及びテストに使用するためのデータベースとWordPress環境をプリインストールしました。
任意のプラグインのディレクトリに移動して以下のようなコマンドを打つとすぐにユニットテストを実行できます。
$ cd /var/www/wordpress/wp-content/plugins/my-plugin
$ wp scaffold plugin-tests
$ phpunit
WordPressプラグインのユニットテストについては、以下のサイトなどが参考になります。
- WordPress › Automated Testing « Make WordPress Core
- Documentation for PHPUnit – The PHP Testing Framework
- Nikolay Bachiyski: Unit Testing Will Change Your Life
- Automated Testing in WordPress, Really?!
- /trunk/tests/phpunit
Simple Mapプラグインにも仕込んでありますので、これを参考にしていただくのもいいかもしれません。
https://github.com/miya0001/simple-map
PHP_CodeSnifferのプリインストール
以下の記事で紹介したコーディングスタンダードに準拠しているかどうかをチェックするためのツールをプリインストールしました。
PHP_CodeSnifferを使ってWordPressのプラグインやテーマがコーディングスタンダードに準拠しているかチェックする
コマンドにエイリアスを仕込んでいますので、以下のように簡単にチェックできます。
$ wpcs /path/to/foo.php
最近の投稿
- PHP_CodeSnifferを使ってWordPressのプラグインやテーマがコーディングスタンダードに準拠しているかチェックする
- 管理画面におけるエラーメッセージの表示
- WP-CLI+PHPUnitを使ったWordPressプラグインのユニットテスト(2)
- WP-CLI+PHPUnitを使ったWordPressプラグインのユニットテスト(1)
- WP-CLI経由のときにプラグインが警告を吐くときの対処方法
- Vagrant+Amimotoで超高速&鼻血がでるぐらい便利なWordPress環境をコマンド一発で起動する。
- WP Total Hacks 1.8.0 – Pingbackをブロックする機能を追加しました。
- Vagrant Shareを使ってVagrant上で構築中のWordPressを一時的にネットに公開!
- oEmbed Gist + Jetpack 2.9について
- WordPressで jQuery UI を使うときに、WordPressと同じバージョンのCSSをGoogleから取得する