より良いWordPressテーマ開発のための7つのティップス

WordPressコアの貢献者で、Automattic社のKonstantin KovsheninさんがWordCamp Norway 2013で登壇された「より良いテーマ開発のための7つのティップス」が良かったので紹介。テーマを作る時に心がけておきたいベストプラクティス的なものです。

  1. get_template_partはトモダチだ 
    ― get_template_partincluderequireとはちょっと違うユニークなプロセスでファイルをインクルードする。
  2. スクリプトとスタイルはenqueueする 
    ― 必ずwp_enqueue_scriptwp_enqueue_styleを使うこと。
  3. Theme OptionよりもCustomizer 
    ― テーマのカスタマイズ設定はTheme OptionとCustomizerの両方もしくはどちらか1つ実装できるが、これからはCustomizerの方に集中しよう。Customizerの方がよりエンドユーザーにはより良いユーザーエクスペリエンスを提供できる。
  4. Editorスタイルを追加しよう 
    ― 公式レポジトリにある1600以上のテーマにeditor styleが含まれているのはわずか200。これじゃあリッチテキストエディターは使われないよね。実装は簡単だし、CSSもコピペすればOK。
  5. query_posts使うべからず 
    ― これば僕の一番のお気に入り。WP_Querypre_get_posts、そしてquery_posts。どれも2つ目のクエリーを走らせるのは同じだけど、query_postsだけ特殊で実行する。query_postsはメインクエリーを変更するのではなく、丸ごとそっくり差し替えるんだ。だからきちんと理解できてないととんでもないことになる。僕の経験からいって、サブクエリーを作りたければWP_Query、メインクエリーを変更したければpre_get_postsもしくはrequestフィルターを使うと良い。
  6. スクラッチから作り始めない 
    ― スクラッチから作るのはつらい。子テーマ、テーマフレームワーク、スターターテーマを使って効率的に開発しよう。車輪の再発明はしないように。コードの再利用は良いプログラミング慣行だよ。
  7. ツールをよく知っておこう。 
    ― 僕が開発時に使っているツール: Theme Check、Theme Unit Test、Log Deprecated Notices、Debug Bar + Debug Bar Extender + Debug Bar Console、Monster Widget、WordPress Beta Tester、Core Control。

勢いで訳したので、原文確認をオススメです。登壇内容が本人により分かりやすくまとめられているので、是非原文を読んでください。スライドと動画もアップされてます。

7 Tips for Better WordPress Theme Development – Konstantin Kovshenin