WordPressコアの貢献者で、Automattic社のKonstantin KovsheninさんがWordCamp Norway 2013で登壇された「より良いテーマ開発のための7つのティップス」が良かったので紹介。テーマを作る時に心がけておきたいベストプラクティス的なものです。
get_template_part
はトモダチだ
―get_template_part
はinclude
やrequire
とはちょっと違うユニークなプロセスでファイルをインクルードする。- スクリプトとスタイルはenqueueする
― 必ずwp_enqueue_script
とwp_enqueue_style
を使うこと。 - Theme OptionよりもCustomizer
― テーマのカスタマイズ設定はTheme OptionとCustomizerの両方もしくはどちらか1つ実装できるが、これからはCustomizerの方に集中しよう。Customizerの方がよりエンドユーザーにはより良いユーザーエクスペリエンスを提供できる。 - Editorスタイルを追加しよう
― 公式レポジトリにある1600以上のテーマにeditor styleが含まれているのはわずか200。これじゃあリッチテキストエディターは使われないよね。実装は簡単だし、CSSもコピペすればOK。 query_posts
使うべからず
― これば僕の一番のお気に入り。WP_Query
、pre_get_posts
、そしてquery_posts
。どれも2つ目のクエリーを走らせるのは同じだけど、query_posts
だけ特殊で実行する。query_posts
はメインクエリーを変更するのではなく、丸ごとそっくり差し替えるんだ。だからきちんと理解できてないととんでもないことになる。僕の経験からいって、サブクエリーを作りたければWP_Query
、メインクエリーを変更したければpre_get_posts
もしくはrequest
フィルターを使うと良い。- スクラッチから作り始めない
― スクラッチから作るのはつらい。子テーマ、テーマフレームワーク、スターターテーマを使って効率的に開発しよう。車輪の再発明はしないように。コードの再利用は良いプログラミング慣行だよ。 - ツールをよく知っておこう。
― 僕が開発時に使っているツール: 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