開発環境を整える
TOPICS
開発環境を整える理由
テーマを開発する際には、最終的に WordPress のインストールをホストする本番サーバーと同じ環境で開発するのがベストです。 開発環境はローカルでもリモートでもどちらでも構いません。 ローカル環境を設定して WordPress テーマを作業することは、以下の理由から有益です。
- リモートサーバーに頼ることなく、ローカルでテーマを構築することができます。これにより、開発プロセスが高速化され、ブラウザ上で変更を即座に確認することができます。
- テーマを構築するためにインターネット接続が必要ありません。
- あなたは、様々な観点からテーマをテストすることができます。これは特に、より多くの人にテーマを公開する予定があり、互換性を最大限に確保したい場合には重要です。
WordPressのローカル開発環境
WordPressテーマを開発するためには、WordPressに適した開発環境を整える必要があります。 手始めに、ローカルサーバーとテキストエディタが必要になります。
ローカルサーバー
LAMP (Linux Apache MySQL/MariaDB PHP) や WAMP (Windows Apache MySQL/MariaDB PHP) などのローカルサーバースタックは、ローカルマシン上で設定するサーバです。 (Web サーバ上で動作するサーバーによく似ています) MAMP(Mac用)やXAMPP(Mac、Windows用)のように、これらをすべて含むプログラムをインストールすることで、環境を素早く設定することができます。
仮想環境
VagrantとVirtualBoxで作成した仮想化したようなもので、再現性の高い開発環境を簡単に作ることができます。Varying Vagrant Vagrants (VVVV)は、WordPressの開発環境を作成するVagrantのオプションとして人気があります。
テキストエディター
ローカルサーバー環境に加えて、コードを書くためのテキストエディタも必要です。テキストエディタの選択は個人差がありますが、優れたテキストエディタは開発プロセスをスピードアップさせることができることを覚えておいてください。テキストエディタには、コードを書くための基本的なツールから、デバッグやテスト用のツールを備えた完全に統合された開発環境 (IDE) まで、さまざまなものがあります。調べてみる価値はありますし、中にはWordPress開発をサポートしているものもあります。人気のあるテキストエディターはAtom、Sublime Text、PhpStormです。
このページの最後に、開発環境を設定するためのチュートリアルのリストがあります。
WordPressの旧バージョンのサポート
WordPressテーマは、最低限の下位互換性を確保するために、少なくとも2つのバージョンをサポートするのが標準的な慣習です。例えば、現在のWordPressのバージョンが4.6であれば、あなたのテーマがバージョン4.5と4.4でも十分に動作することを確認する必要があります。
WordPressロードマップのページを参照して、古いバージョンのWordPressにアクセスすることができます。そして、古いバージョンのWordPressをダウンロードしてインストールし、複数の開発サイトを作成し、それぞれが異なるバージョンのWordPressを動作させてテストすることができます。
WP_DEBUG
デバッグの設定は、WordPressテーマの開発には欠かせないものです。WordPress には、デバッグ作業をサポートするための定数がいくつか用意されています。
WP_DEBUG
WP_DEBUG というPHP 定数は、WordPress インストールに組み込まれた “デバッグ” モードを起動するために使用されます。これにより、テーマのエラーを表示することができます。
デバッグモードを有効にする手順
1.wp-config.php
ファイルを開きます。
2.
define( 'WP_DEBUG', false );
を
define( 'WP_DEBUG', true );
に変更します。
通常は wp-config.php ファイルで ‘false’ に設定されていますが、WordPress-alpha とベータ版の開発コピーでは、近日公開予定の release-WP_DEBUG はすでにデフォルトで ‘true’ に設定されています。
WP_DEBUG_DISPLAY と WP_DEBUG_LOG
WP_DEBUG_LOG および WP_DEBUG_DISPLAY は、WP_DEBUG を拡張する PHP の追加定数です。
WP_DEBUG_LOG
は WP_DEBUG
と一緒に使用し、すべてのエラーメッセージを WordPress の /wp-content/ ディレクトリ内の debug.log に記録します。この機能を有効にするには、wp-config.php
ファイル内でWP_DEBUG_LOG
を true
に設定してください。
define( 'WP_DEBUG_LOG', true );
WP_DEBUG_DISPLAY
は、テーマページの HTML 内にデバッグメッセージを表示するかどうかを制御するために使用します。エラーメッセージを発生時に画面に表示するには、 wp-config.php
ファイル内でこの設定を true
にしてください。
define( 'WP_DEBUG_DISPLAY', true );
WP_DEBUG
とWP_DEBUG_DISPLAY
を有効にすると、サイトページの上部にエラーメッセージが表示されます。
エラーはサイトのフロントエンドと管理領域に表示されます。これらのデバッグツールは、ローカルテストとステージングインストールのためのもので、本番サイトのためのものではありません。
その他WordPressの開発用ツール
WP_DEBUGに加えて、以下のプラグインとユニットテストデータセットは開発ツールセットの重要な部分であり、より良いWordPressテーマを開発するのに役立ちます。
テストデータ
WordPress.org Theme Unit Test Data
WordPress.org Theme Unit Test Dataは、コンテンツの種類やレイアウトが異なるテーマがどのように動作するかをテストするためにアップロードできるダミーのテストデータを含んだXMLファイルです。
※訳者注:GitHubに日本語用のテストデータもありました。
管理画面 > ツール > インポート「WordPress」からインポートして使用できるそうです。
jawordpressorg / theme-test-data-ja
試しに以下のサイトにインポートしてみたので、気になる方は覗いてみてください↓
http://wp-template.exp.jp/theme-test-data/
WordPress.com Theme Unit Test Data
WordPress.com Theme Unit Test Dataは、WordPress.com固有の機能を含むテーマをテストするために、WordPressのインストールにアップロードできるダミーのテストデータです。
プラグイン
Debug Bar (WordPress plugin)
Debug Barは、WordPress の管理画面に管理者用のバーを追加し、デバッグのための中心的な場所を提供します。
Query Monitor (WordPress plugin)
Query Monitorでは、データベースクエリのデバッグ、APIリクエスト、テーマページやテーマ機能の生成に使用されるAJAXの呼び出しが可能です。
Log Deprecated Notices (WordPress plugin)
Log Deprecated Notices は、WordPressテーマ内での不適切な関数の使用状況や非推奨のファイルや関数の使用状況をログに記録します。
Monster Widgets (WordPress plugin)
Monster Widgetは、WordPressのコアとなるウィジェットを1つのウィジェットに統合したもので、テーマ内のウィジェットのスタイリングや機能性をテストすることができます。
Developer (WordPress plugin)
Developerは、トラブルシューティングやコード品質の確保に役立つツールやプラグインを簡単にインストールできるようにすることで、開発環境を最適化することができます。
Theme-Check (WordPress plugin)
Theme-Checkは、あなたのテーマが最新の WordPress 標準およびプラクティスに準拠しているかどうかをテストします。
WordPressテーマレビューガイドライン
上記の開発ツールに加えて、WordPress.orgテーマレビューチームのテーマ投稿のためのガイドラインや、WordPress のコーディング基準を満たすためのガイダンスから最新の情報を入手しておくといいでしょう。
これらのガイドラインは、質の高いテーマ開発のための「ゴールドスタンダード」であり、WordPress.org でテーマを公開する予定がなくても、役に立つものです。
その他のリソース
- Developing WordPress Locally With MAMP (Mac, MAMP)
- How to Setup a WordPress Development Environment for Windows (Windows, XAMPP)
- WordPress Theme Review VVV: A Quick Vagrant Setup for Testing Themes (Cross-platform, Vagrant)
- Setting up your Development Environment (WordPress.com VIP)
- wptest.io – an exhaustive set of WordPress test data derived from WordPress’ Theme Unit Test