入門
Vagrant+WordPress

2013/11/23

宮内 隆行

@miya0001

このスライドは以下のURLで公開しています。

https://firegoby.jp/presentations/vagrant

自己紹介

和歌山県の串本町というところから来ました!

kushimoto

wcosaka2012.003

プラグインを作って公式ディレクトリで公開しています。

http://profiles.wordpress.org/miyauchi

my-plugin

WordPress_›_PresenPress_«_WordPress_Plugins

https://firegoby.jp/wp/presenpress

みなさん、開発環境どうしてます?

Mamp? Xampp ?

MampやXamppによる
開発環境の問題点

無限に増えるバーチャルホスト

膨れ上がる hosts ファイル

動く動かない問題…。

  • いろんなプロジェクトにかかわるうちに設定がカオス。
  • チーマメンバー間での環境の相違

SSLどうやってテストしようかしら???

つうか毎回開発環境を用意することって無駄じゃない?

チームメンバー全員がバラバラで環境を用意するのってさらに無駄じゃない?

そんなあなたにVagrant

Vagrant

Vagrant とは、コマンド一発で任意の構成の仮想マシンを構築するソフトウエアです。

Vagrantのすごいところ

コマンドが簡単

vagrant up // 起動
vagrant halt // 終了
vagrant reload // 再起動
vagrant provision // 初期化

いらなくなったら捨てちゃおう

vagrant destroy

Vagrantfileがあれば `vagrant up` で簡単に復活!

Vagrantファイルを共有すれば、
チーム全員で環境そのものも超簡単に共有!

インストール方法

Macの場合。

  1. Xcodeをインストール(必須ではないけど、いれときましょう。)
  2. VirtualBoxをインストール
    https://www.virtualbox.org/
  3. Vagrantをインストール
    http://www.vagrantup.com/

WordPress用のVagrantファイルもいくつか公開されています。

  1. VVV
  2. VCCW

VVVについて

https://github.com/10up/varying-vagrant-vagrants

WordPressのコアチームが開発したVagrant環境

  • ウェブサーバーにNginxを使用
  • OSにUbuntu
  • 4種類のWordPressをインストール
    • 最新版
    • 開発版 x 3

メインの目的はWordPressそのものの開発を目的としています。

 VCCWについて

https://github.com/miya0001/vagrant-chef-centos-wordpress

私が開発したVagrant環境

  • ウェブサーバーにApacheを使用
  • OSにCentOS
  • 多様なオプション
    • SSLがデフォルトで利用可
    • マルチサイトにも対応
    • デフォルトテーマ、プラグインの設定が可能

WordPressを使用したサイト制作を目的としています。

VCCWでできること

WordPress のベータバージョンを試したい。

WP_VERSION = '3.8-beta-1';

書き換え後に vagrant up もしくは vagrant provision

任意のドメイン名で立ちあげたい。

WP_HOSTNAME = "firegoby.jp";

起動時に特定のテーマを自動的に有効化したい。

WP_DEFAULT_THEME = "twentyfourteen";
または
WP_DEFAULT_THEME = 'https://github.com/miya0001/firegoby-2011/archive/master.zip';

起動時に特定のプラグインを自動的に有効化したい。

WP_DEFAULT_PLUGINS = %w(theme-check simple-map plugin-check hotfix);

さらに!

Grunt + wp-cli を組み合わせて超便利!

Iemoto

https://github.com/megumiteam/iemoto

  • Sass + Compassでサクサクテーマー開発
  • _s ベース

Hatamoto

https://github.com/megumiteam/hatamoto

  • 超簡単にプラグインの開発を始めるためのテンプレート
  • Iemoto と同じく、CSSやJsのminifyを自動的に行います。

ありがとうございました!