11.3 模板输出覆盖

通过 Joomla如何确定确定生成页面的代码 一文可以确定产生页面的代码,那么为了实现我们想要的效果直接修改这些文件中的代码,这样做是否可以?是否有更好的方法解决

1,本节目标


了解为什么设计了模板输出覆盖机制

2,思考


 为了输出图文列表的效果,因此,我们开始修改文章组件中对应的文件,成功的实现了要的效果。似乎一切都ok,没有问题!但深入考虑后,你会发现这样做是有问题的,它无法解决升级的问题。

 我们知道Joomla几乎每一月都会发布一个新的版本,我们可以在线更新,以保证我们的Joomla代码都是安全的。同样,对于第三方扩展的开发者,如果他们发现扩展有bug,需要发布更新版。如果你安装了更新版,那么你之前做的所有工作都被覆盖了。有没有一个方法能解决更新问题呢?

3,模板的输出覆盖


Joomla为了方便设计师设计页面,给了设计师非常大的权利,几乎可以重新输出任何的内容,包括组件输出,模块输出,插件输出,以及部分核心输出。这样充分的说明了Joomla的灵活性。

所谓的Joomla模板输出覆盖,实际上就是一个优先级的问题。比如组件的开发者可以输出页面的外观,同样Joomla也允许模板去重写组件的输出,并且这个输出的优先级更高。当系统发现模板对指定的视图进行了重写,那么系统就会采用模板的视图,如果模板没有重写,那么就使用组件的视图。

当我们在模板中对组件进行输出重写的时候,即使更新组件,或者升级Joomla,我们的重写都会被保留。这样就完美的解决了更新的问题了。



作者:张敏
原文:http://www.joomlachina.cn/articles/1821-jiaocheng/joomla-plan-c/1562-first-template-34?tmpl=component&zhuanti=1

Joomla模板开发教程

获取最新资讯

© 广州市番禺区新造草云信息技术咨询服务部版权所有。
粤ICP备13002429号.

Joomla系列教程

站内链接