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

[复制链接]
ARCHY明星会员实名认证 发表于 2013-8-27 10:18:00 [Discuz开发] 显示全部楼层 |阅读模式 上一主题 下一主题

马上注册,一起探讨正确快速的建站方法

您需要 登录 才可以下载或查看,没有帐号?快速注册

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

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

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

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

显然,使用 sub 能加快页面加载的速度!




上一篇:Discuz x道具赠送可刷分的BUG解决方案
下一篇:Discuz!X 输出调试信息的方法

大神点评2

影子明星会员实名认证 发表于 2013-8-27 19:24:35 [Discuz开发] 显示全部楼层
那X3 怎么就不是用SUB的?
276231160 发表于 2013-8-27 21:33:27 [Discuz开发] 显示全部楼层
好,学习了,模块的内容太难了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表