信頼性の高いWordPressテーマを作るためのTheme-Checkのすすめ

以前の記事でテーマを作る際にはテーマユニットテストをしようねと書きましたが、実はテーマを作る際にぜひおすすめしたいテストがもうひとつあります。

今回の記事ではTheme-Checkというプラグインを使ったテーマの機能テストについてご紹介します。

Theme-Checkプラグインってなによ?

Theme-CheckプラグインとはWordPressで定められているテーマの品質に対するガイドラインに適合しているかどうかをチェックするためのプラグインです。

WordPress › Theme-Check « WordPress Plugins

このプラグインの作者さんは、WordPressテーマレビューチームという聞いただけで怖そうなチームに所属している人たちで、公式ディレクトリでテーマを公開する前には必ずこのプラグインでチェックすることが義務付けられています。

公式ディレクトリに掲載しないから関係ないよ

たしかにそういう考え方もありかもしれません。

でも、このテストで警告が出ないテーマは、公式ディレクトリに掲載されるのと同じレベルでの品質を保証できるわけですから、すくなくとも私はクライアントに納入するすべてのテーマでこのテストを行ない警告が出ないようにしています。

WordPressには本当に多様な機能がありますので、対処療法で一つ一つの機能の確認をしたり、不具合の修正をするのは作業効率がよくありません。

それに、万が一、競合他社さんがこのテストをクライアントに奨めた時に、デザイン以前の問題で信用を落とすのは嫌ですよね。

どんなことをチェックしてくれるんだい?

このプラグインがチェックしてくれることは多岐にわたります。

以下ではほんの一例をご紹介します。

CSS関連

以下のようなクラス属性に対するスタイルが定義されているかどうか?

  • .aligncenter
  • .alignleft
  • .alignright
  • .wp-caption
  • .sticky
  • その他

テンプレートタグ関連

最低限必要なテンプレートタグがテーマ内に記述されているかどうか?

  • wp_head()
  • wp_footer()
  • body_class()
  • post_class()
  • その他

セキュリティ&互換性

互換性やセキュリティにリスクがあるテンプレートタグやPHPの関数が使われていないか?

  • PHPのsystem()とかfile_get_contents()などサイトにリスクを及ぼす可能性がある関数が使われてないか?
  •  bloginfo(‘home’)とかbloginfo(‘stylesheet_directory’)など最新のWordPressで非推奨となっているテンプレートタグが使用されていないか?

チェック項目は、ほかにも本当にたくさんあって、たとえば以前に書いた記事で紹介した$content_widthが抜けてても盛大に警告が出たりしますし、.gitや.svnなどのバージョン管理システム用のファイルがあっても怒られます。

テーマをダウンロードする際にも一度はテストしましょう

このプラグインを適用するとマルウエアっぽい動作をするテーマを見つけるのにも有効です。

すばらしいことに、実際にテーマを有効にしなくてもインストールされているテーマを選択してチェックすることも可能ですので、ぜひテーマを有効化する前にこのテストを実行して、安全性を確認しましょう。