{% include %}
次で定義されたテンプレートパスの外側にあるテンプレートを含めることは可能ですか:
$template = $twig->loadTemplate('example.tpl');
この行が機能しないため、私はそれを求めています:
{% include '.../example/navbar_left.tpl' %}
{% include %}
次で定義されたテンプレートパスの外側にあるテンプレートを含めることは可能ですか:
$template = $twig->loadTemplate('example.tpl');
この行が機能しないため、私はそれを求めています:
{% include '.../example/navbar_left.tpl' %}
内部にTwig_Loader_Filesystem
あるテンプレート名を明示的に拒否するため、を使用することはできません。これは、 file 内..
の関数の定義で確認できます。validateName($name)
Twig/lib/Twig/Loader/Filesystem.php
パス外のテンプレートにアクセスする必要がある場合、私が考えることができる唯一のクリーンな解決策は、独自の loader を作成することです。
機能する回避策は、実際に登録されているフォルダー内にシンボリックリンクを定義し、Twig_Loader_Filesystem
アクセスしたいディレクトリを指すことです。この方法には注意して、リンクを安全な場所に向けてください。
Twig ローダー (ファイルシステム ローダー) にパスを追加できます。Fabien からの最後の返信を参照してください (addPath メソッドが必要です) https://github.com/symfony/symfony/issues/1912