Twigテンプレートの有効化
管理画面 > テーマ から、使用テーマの編集画面に入り「Twigテンプレート」を有効にすることで、Twig記法が利用することができるようになります。
もしくは、テーマ内の「template.yaml」を以下のように設定することでも可能です。
tpl_top : index.twig
tpl_index : index.twig
tpl_detail : _entry.twig
tpl_404 : 404.twig
tpl_admin : admin.html
tpl_entry_edit : _entry.twig
tpl_login : _member-admin/login.html
tpl_twig : enabledtemplate.yaml の設定は、管理画面のテーマ設定より優先されます(load_yaml_tpl: on のとき。既定で on)。template.yaml は使用中のテーマから親テーマへ順に探し、最初に値が見つかったものを使います。管理画面で切り替えても反映されない場合は、使用テーマ・親テーマの template.yaml に tpl_twig が書かれていないか確認してください。
テンプレートファイルの探索順
Ver. 3.2.18 以降、指定されたファイル名に対して、以下の順にテンプレートが探索されます。
拡張子が .html、または .twig の場合
探索順 | 候補ファイル名の例 |
|---|---|
1 |
|
2 |
|
3 |
|
.html 以外の拡張子(例:.xml)の場合
探索順 | 候補ファイル名の例 |
|---|---|
1 |
|
2 |
|
.xml などの場合は foo.twig(汎用の .twig ファイル)は候補に含まれません。これは、XMLテンプレートをHTMLテンプレートとして誤って解決するのを防ぐためです。
探索はテーマ単位で行われます。使用中のテーマで上の順に探し、見つからなければ親テーマ、最後に system テーマで同じ順に探します。そのため、子テーマに index.html、親テーマに index.twig がある場合は、子テーマの index.html が使われます。
Twigテンプレートのキャッシュ
Twig テンプレートはコンパイルされた PHP コードとしてキャッシュされます。デバッグモードがオフのときは、テンプレートファイルを編集しても自動では再コンパイルされません。この動作は「テンプレートキャッシュ」(template_cache)の設定とは関係なく、template_cache が off でも同じです。
開発中はデバッグモードをオンにして作業し、本番環境にテンプレートを反映したときは、ダッシュボードからテンプレートのキャッシュをクリアしてください。
