Help us understand the problem. What is going on with this article?

「WordPressプラグイン開発のバイブル」を読みながらハマったところ

More than 5 years have passed since last update.

最初に

 「WordPressプラグイン開発のバイブル」は、いい本です。WordPressで開発をする人は是非買おう。

 本に書かれていることを愚直に実施したときに、あれ?っと思った箇所をメモします。ほとんど自分自身のスキル不足が原因です。

実行環境

  • Windows 7 (64bit)
  • 「Wordpressプラグイン開発のバイブル」初版
  • 2015年2月23日に実施
  • 2015年2月24日追記:第10章の部分。

ハマったところ

【第3章】プラグインの開発環境を作る

Vagrantのインストール

インストール後、VCCWにてVagrantにセットアップされたOSにログイン使用とした時、初期パスワードがわからなかった。MySQLのID/Passは設定ファイルに記載されているのを見つけられたけど、OSへログインIDなどの記載は見つけられず。

正解は

ID: vagrant
Pass: vagrant

vagrantを使ってのインストールは初めてだったのでハマった。
ちなみにセットアップされるOSは、CentOS 6.6でした。

【第4章】プラグインの開発環境を作る

PHP_CodeSniffer関連

VCCWで作られた環境内でやろうとしたら、"permission denied (publickey) "と表示されてgit cloneできず。なんでcloneできないんだろと考えてもVirtualBoxとLANの2重NAT状態だからかなと想像したものの、解決できる手段がないので、別方法の解決方法を探ることに。

バイブル上には

$ git clone git@github.com:WordPress-Codeing-Standards/com:WordPress-Codeing-Standards.git ~

と書いてあるところを

$ git clone -b master https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git

に書き換えて実行。これでgit clone問題 解決。

WordPress-Coding-Standards が設定されてない

バイブルには

phpcs -p -s -v --standard=Wordpress my-plugin.php

とあるもののアレ?なんかエラーでる。調べてみたら登録が必要な模様。

phpcs --config-set installed_paths /path/to/wpcs

という感じの登録が必要だった模様。

参考サイト
* http://www.d-wood.com/blog/2014/09/12_6884.html)
* https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards

はじめてのプラグインを作る

ファイルヘッダを記述するのが思いの外 面倒。素直に3章で紹介されているプラグイン:Pluginceptionを利用するか、10章を先に読んでWP-CLIでプラグインのひな形を生成したほうが楽でした。

【第10章】 PHPUnitでプラグインのテスト駆動開発を行う

PHPUnitテスト用のWordPress環境を準備する(1)

WP-CLIでプラグインのひな形を作ったあとに、素のプラグインをPHPUnitでテストを実行しようとするところで、コマンドラインでPHPUnit専用のWordPressをインストールするところがあります。

$ bash bin/install-wp-test.sh ~

VCCWの再起動もなにもしていない状態で、このコマンドを実行した時、Wgetで最新版のWordPressを取得するタイミングで/tmp/wordpress.tar.gzにダウンロードできなくて止まってしまうようです。

/tmpをみると、ダウンロード済みのwordpress.tar.gzがrootユーザーでダウンロードされているため、パーミッションのエラーが発生してるようです。同じく/tmp/wordpress-tests-lib/以下もrootユーザーで作成されているのでパーミッションエラーが発生します。

おそらく、VCCWのセットアップ時にroot権限でダウンロードされたものだと思いますので、ざっくりと/tmp/wordpress.tar.gzや/tmp/wordpress-tests-lib/をsudo rm -rf /tmp/wordpress*などで削除したほうがスムーズに進められるかも。

PHPUnitテスト用のWordPress環境を準備する(2)

ページ順に手を動かして学習しているとP223で、PHPUnitテスト用のWordPress環境を準備することになりますが、その後の10章4項の「ショートコードプラグインをテスト駆動開発で作る」の中でも同じことをしています。VCCWを使っている場合、VCCWにそって話を進めている10章4項でチャレンジすることをおすすめします。

終わりに

まだプラグインを作るところまで進んでいません。ちょっとずつ読み進めていきたい所存。

yyano
IT系おじさん。やんわりと転職活動中。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away