quanshiyinian 发表于 2015-1-14 18:51:45

Discuz!X 模板使用 {template...} 与 {subtemplate...} 的区别

之前在discuz x2.5的模版中引入页头是使用的<!--{subtemplate common/header}-->,而在discuz x3中很多都使用的<!--{template common/header}-->,那么这2个在模版中有什么区别呢?下面就简单说说:

1、在模版中使用{template...},会在生成的 tpl 文件中生成如下代码:
<?php include template('common/header'); ?>此代码将在缓存文件被调用的时候,再次加载目标模版!

2、如果使用{subtemplate...} ,则在 tpl 文件中就直接加载了子模版!

简单说就是:使用 sub 嵌套模版的时候,是直接将被嵌套模版解析为PHP语句并合并入母模板中!而使用 template 的方式,则是:程序运行时include嵌套模板内容!

显然,使用 sub 能加快页面加载的速度!
页: [1]
查看完整版本: Discuz!X 模板使用 {template...} 与 {subtemplate...} 的区别