[WP Theme Dev] WordPress theme 開発時に利用する3つのチェック方法

「エンジニアのためのWordPress開発入門 – 6.6 作成したテーマのチェック」でも取り上げられていました。

[markdown]

エンジニアのためのWordPress開発入門 (Engineer's Library)
野島 祐慈 菱川 拓郎 杉田 知至 細谷 崇 枢木 くっくる
技術評論社
売り上げランキング: 181,393

## デバッグモードによるチェック

PHP 構文のエラーや WordPress 非推奨関数の警告などが表示されます。

> * [WordPress初心者におすすめ!デバッグモードの使い方 | Mignon Style](http://mignonstyle.com/debug-mode/)

[VCCW](http://vccw.cc/) では以下の設定に対応して、

“`yaml:site.yml
#
# The values of wp-config.php
#
force_ssl_admin: false
wp_debug: true
savequeries: false
“`

このような値になっています。

“`php:wp-config.php
define( ‘JETPACK_DEV_DEBUG’, True );
define( ‘WP_DEBUG’, True );
define( ‘FORCE_SSL_ADMIN’, False );
define( ‘SAVEQUERIES’, False );
“`

## theme-check プラグインによるチェック

配布テーマ用のチェッカーですが、ソースコードを簡単にチェックできます。
[Theme Check — WordPress プラグイン](https://ja.wordpress.org/plugins/theme-check/)

> * [信頼性の高いWordPressテーマを作るためのTheme-Checkのすすめ | firegoby](http://firegoby.jp/archives/2691)

[VCCW](http://vccw.cc/) で `vagrant provision` 時にプラグインをインストールするには、下記の設定を追記します。

“`yaml:site.yml
#
# WordPress Default Plugins
# Plugin’s slug or url to the plugin’s slug.
#
plugins: [‘theme-check’]
“`

## テーマユニットテストによるチェック

さまざまなパターンのダミーデータをインポートして、表示に崩れが発生していないかを確認します。

> * [WordPressでテーマを作る際のテーマユニットテストのススメ | firegoby](http://firegoby.jp/archives/2467)
> * [テーマユニットテスト – WordPress Codex 日本語版](http://wpdocs.osdn.jp/%E3%83%86%E3%83%BC%E3%83%9E%E3%83%A6%E3%83%8B%E3%83%83%E3%83%88%E3%83%86%E3%82%B9%E3%83%88)
> * [jawordpressorg/theme-test-data-ja: Japanese test data for WordPress](https://github.com/jawordpressorg/theme-test-data-ja)

[VCCW](http://vccw.cc/) では `theme_unit_test: false` になっているので、これを `true` に変更します。

“`yaml:site.yml
#
# Theme unit testing
#
theme_unit_test: true
# theme_unit_test_uri: https://raw.githubusercontent.com/WPTRT/theme-unit-test/master/themeunittestdata.wordpress.xml
theme_unit_test_uri: https://raw.githubusercontent.com/jawordpressorg/theme-test-data-ja/master/wordpress-theme-test-date-ja.xml
“`

### vagrant provision に失敗するエラーが解消している

以前のバージョン(2015年版)のデータは、インポート時にエラーが発生していました。
その影響で VCCW では `vagrant provision` が失敗・完了しないエラーがありましたが、データが書き換わっており解消していました。

> * [jawordpressorg/theme-test-data-ja: Japanese test data for WordPress](https://github.com/jawordpressorg/theme-test-data-ja)

まだ正式リリースではないようですが手動でインポートする場合も、`wordpress-theme-test-date-ja.xml` を直接ダウンロードすれば良さそうです。

> * [スターターテーマ _s を使ってWordPressのテーマをつくる(準備編・補足) – Gatespace’s Blog](https://gatespace.jp/2013/01/07/underscores01/)

## 補遺

> * [VCCW を使ってテーマやプラグインのコーディングスタンダードをチェック – Qiita](http://qiita.com/miya0001/items/6f9063099080b0497c6e)
> * [テーマレビューから学ぶ初心者向けの安全な WordPress テーマの作り方 – Capital P](https://capitalp.jp/2017/01/26/theme-security/)
[/markdown]