模板的基础概念模板是对程序原有的界面、框架进行各种改进,作者根据自己的创作与功能收集,让程序前台以一种全新的形态进行展示!模板的制作触及程序功能的二次增强与用户体验
制作模板时需要有一定的HTML基础、css样式基础、简单的模板语法基础。这些都可以通过修改默认模板过程中学会
当学会风格制作后,就可以试着制作一款自己需要的模板了。
特点:拥有独立的一套模板目录、涉及大量模板文件的自定义修改,有一些模板会有繁琐的安装过程。
一套优秀的模板需要站点管理人员根据自己使用的模板特性进行专门的数据推送与数据展现方式。
无论模板制作多么优秀,管理人员推送到模板中的数据如果不足以吸引眼球,那也是失败的!
本文中针对模板制作中重要的环节进行讲解,以下内容同样适用与其他开源程序如PHPwind、php168、Ecshop等等,大家在看以下内容时要学会举一反三,多试验、多动手、多备份!
DiscuzX2.5新增php格式模板文件载入支持
从 Discuz! X2.5 开始,模板文件支持 PHP 扩展名的格式,主要功能是防止模板被别的论坛盗取!
例如:template/default/common/header.htm
可创建为:template/default/common/header.php,模板文件为php后,代码书写方式不改变依然和以前一样采用HTML
php后缀的模板文件需在模板文件开头添加一行代码: - 这段代码就是一段典型的循环代码,意思是将自定义变量$data进行循环,并将每次循环的数据传递给$value,$key是数组键值(序号),<!--{loop $data $key $value}--><!--{/loop}-->之间书写html代码。我们只需要记住这个简单却重要的意思!
复制代码
打开template/default/forum/viewthread.htm
- 查看模板插件钩子注解图示例
- 插件钩子的作用在于能让插件在指定的一些位置输出有关代码!
- 在DZ7.x-DX1.5中插件钩子并不显得很重要,但是随着插件应用的不断普及,插件创作者的不断加入,插件钩子在模板中的地位尤其显得格外重要,如果缺少了程序必须的插件钩子,可能会造成自带系统插件功能受到影响!
复制代码所以我们在制作模板的时候一定要参考默认模板中的插件钩子位置进行合理的安排!
除非你觉得某个插件钩子在自己的模板中并不需要,否则请保留插件钩子代码!
DiscuzX的模板文件N次嵌套:
我们在模板文件template/default/forum/viewthread.htm中可以找到:<!--{subtemplate forum/viewthread_node}-->,
这个代码的意思是在这个代码的位置载入另外一个模板文件:template/default/forum/viewthread_node.htm,
当我们打开这个文件后发现还有一段载入代码:<!--{subtemplate forum/viewthread_node_body}-->
这就是DiscuzX的模板文件N次嵌套!
我们首先要清楚的理解各个模板文件是做什么用的,就知道这些嵌套的意思:
template/default/forum/viewthread.htm 帖子内容页主模板,这个模板文件是帖子内容页处理程序加载的
template/default/forum/viewthread_node.htm 帖子内容页楼层模板文件,这个模板文件循环一次就是一个楼层
template/default/forum/viewthread_node_body.htm 帖子内容页,帖子内容模板,这个模板文件是专门用于处理帖子内容的
这种嵌套方式是便于以后的代码修改,比如我只想修改帖子内容的代码,就只需要编辑viewthread_node_body.htm,而不用把另外两个文件都编辑。
通过以上的讲解,大家也就可以对变量、循环、判断、文件嵌套有了一个初步的认识,事在人为,凡事多动手多备份少依赖,就能很快的进入模板制作行列,明明只需要改下代码刷新一下的简单问题,却要花一天的时间等别人帮你解决,如何才能高效?只有通过不断试验,不断累计错误,这样才能得到提升!
作者:cr180 / 整理日期:2012-4-21 / 原文:http://www.discuzt.com/discuzcode-template_code_b.html
|
上一篇: Discuz模板的创建与基础配色知识下一篇: DiscuzX已内置常用css代码与css样例
|