我为每个组件(即页面)构建了一个单独的目录。
/var/www/components/component_1/
/var/www/components/component_2/
/var/www/components/component_3/
在每个目录中,我都有一个控制器、一个模型和一个Twig模板。可能位于/var/www/components/component_2/templates/myTemp.html
的典型模板如下所示:
{% extends "base.html" %}
bla bla bla
我有几个基本模板。与子模板不同,我希望这些模板位于/var/www/templates/
中
在扩展Twig模板时,如何指定两个位置?
看看Twig Loader文件系统http://twig.sensiolabs.org/doc/api.html#twig-加载器文件系统
所以可以做一些类似的事情:
$loader = new Twig_Loader_Filesystem(array('/var/www/components/component_1/templates', '/var/www/templates'));
$twig = new Twig_Environment($loader);
echo $twig->render('Hello {{ name }}!', array('name' => 'Fabien'));