扩展模板资源
extends:
扩展资源使用在定义父/子关系的模板继承中。 详情参见模板继承。
Smarty 3.1后,extends:
资源可以使用任何类型的 资源, 包括string:
和 eval:
。 当使用字符串资源的时候,确保其已经被编码(URL编码或base64编码)。 在继承链条中的eval:
资源, “不保存编译文件”的特性将被extends:
取代。 继承链条中的多个模板不会分开编译,而是仅会生成一个单独的编译文件。
Note
当需要继承的时候使用这个。当在PHP代码中使用继承,子模板的覆盖看起来不是很明显。如果可以选择,这是一个更灵活和直接的方式来处理模板继承。
- <?php
- $smarty->display('extends:parent.tpl|child.tpl|grandchild.tpl');
- // 从多个模板资源中继承
- $smarty->display('extends:db:parent.tpl|file:child.tpl|grandchild.tpl|eval:{block name="fooBazVar_"}hello world{/block}');
- ?>