Twig記法と従来記法の併用について
Twigが有効なテーマでは、Twig記法と従来のテンプレート記法を混在させて記述できます。
ただし、テンプレートの解決順により、特定の組み合わせでは記法が正しく反映されない場合があります。
テンプレートの解決順
Twigが有効な場合、テンプレートは以下の順序で解決されます。
Twigによる記述の解決
({% include %}
や{% extends %}
など、Twigの構文を含む部分が先に処理されます)Twigが解決された後に、従来のテンプレート記法が解決される
(@include
や@extends
など、従来の構文が後から処理されます)
このため、処理順の都合で、テンプレートが正しく解決されないパターンがあります。
テンプレートが解決されないパターン
従来の
@include
で読み込んだテンプレートにあるTwig記法は解決されない従来の
@extends
で継承したテンプレート以下にあるTwig記法は解決されない従来の
@extends
で継承されているテンプレートは、Twig記法でインクルード出来ない
簡単に整理すると、Twigが先に解決されるため、従来記法によるインクルードやテンプレート継承されたテンプレートでは、Twig記法は使えないということになります。逆にいうとルートテンプレートからTwigによるテンプレート継承や、インクルードがされていれば、従来記法と併用が可能です。