WordPressのテーマ開発って、すぐにカオスになる。functions.phpが数千行になって、HTMLにPHPが埋もれて、どのフックが何をしてるか誰も理解できない。僕も昔、自作テーマで痛い目を見た。
Genesis Frameworkはこの問題を根本から解決する。StudioPressが開発したWordPressテーマフレームワークで、「親テーマ」として動作し、開発者は「子テーマ」だけ書けばいい。HTML構造、SEO、セキュリティはGenesisが全部面倒を見てくれる。
Genesisを使ってみて、一番衝撃だったのは「テーマファイルを直接いじらなくていい」こと。アクションフックとフィルターフックだけで、表示を自由自在に変えられる:
- ヘッダーの後にバナーを入れたい →
add_action('genesis_after_header', 'my_banner'); - 投稿のメタ情報(投稿日・著者)を変えたい →
add_filter('genesis_post_info', 'my_post_info'); - フッターに独自のクレジットを入れたい →
add_filter('genesis_footer_creds_text', 'my_footer');
この「フック駆動開発」に慣れると、もう従来のテーマ開発には戻れない。子テーマのfunctions.phpは数十行で済むし、CSSだけに集中できる。
ちなみにGenesisは有料($360の買い切り)なんだけど、長く使えるしアップデートも永続。このブログも前に買ったGenesisを親テーマに、子テーマのCSSとフックだけでここまでカスタマイズしてる。PHPはほとんど書いてないのに、思い通りの表示。これこそGenesisの破壊力だ。