DLE模板采用了非常便捷易记的标签模式并建立完全符合标准的.tpl模板文件。
现在的.tpl模板文件不支持直接添加php语句,但是我们通过大量的预置标签,完全不需要像其他程序那样去深究php功能。但是真的可以如此简单而且强大吗?下面我们就做个简单的说明以及实例讲解。
一、DLE模板的标签的应用范围
在《Datalife Engine模板文件列表及相关说明 》一文中我们已经了解了DLE的拆分式的模板文件形式,现在我们提到的标签是在所有模板中都通用的吗?当然不是,如果都通用肯定会出现冲突从而影响标签的灵活性并且也会加大服务器的负担,所以我们在不同的模板中会遇到不同功能的标签来让我们的模板更加强大。
这里我们涉及到两个概念,即全局标签及局部标签:
全局标签:表示在所有模板文件中都能发挥作用的标签,如[aviable=xxx]abcdefghijklmnopqrstuvwxyz[/aviable]
局部标签:表示只有在特定的模板文件中才能发挥作用的标签,如果在其他模板文件中放置,它依然以{}包括特定字符的形式出现,比如{full-link}在fullstory.tpl中会输出文章的固定链接,但是放到其他模板中,会输出 {full-link}
明白了全局标签和局部标签的概念,我们在以后的实际操作中会对特定标签运用的更加精准。
二、DLE模板的标签表现形式
DLE目前支持三类形式的标签及一种调用函数,即:
- 功能类标签:系 统内置标签,以{}包括特定字符构成;只要把这些标签放入到指定的模板中即可出现某些特定功能,如,{AJAX}表示加载AJAX信息、 {Content}表示输出内容类数据、{info}表示输出系统提示信息及错误信息、{login}表示调用login.tpl模板的内容, 等.......
- 数据值标签:系统内置标签,以{}包括特定或自定义字符构成;只要把这些标签放入 到指定模板中即可出现特定的值或数据。特定字符类举例:{tags}在main.tpl中会自动调用整站的标签云,而在fullstory.tpl里面会 自动调用文章对应的标签、{full-story}表示在fullstory.tpl里面输出文章全文内容,{full-link}表示在 fullstory.tpl里面输出文章固定链接;自定义字符类举例:{banner_header}表示在模板中输出名称为header的广告、 {image-x}表示在模板中输出文章中出现的第X幅图片的地址等....
- 范围类标签:系统内置 标签+自定义范围,以两组[]包括的特定字符构成;前面一组用于指定开始位置及应用的特定范围,后面一组用于指定结束位置。如: [aviable=userinfo|main|register]http://zctou.com[/aviable] 表示在用户信息页面,主页及用户注册页面才会出现http://zctou.com 这个字符,为了更好的满足模板要求,程序还提供了另外一组范围标签[not-aviable=userinfo|main|register]http://zctou.com[/not-aviable] 表示在用户信息页面,主页及用户注册页面不会出现 http://zctou.com 这个字符;类似的标签还有很多,如[category=x]abc[/category]表示在id为x的分类中出现abc,而[not-category=x]abc[/not-category]则完全相反,注意,在两个[]直接的内容支持html代码
- 调用函数:{include file="sidebar.tpl"}表示调用同目录下的sidebar.tpl模板文件、{include file="/engine/modules/searchcloud.php"}表示调用从根目录开始的特定目录下的php文件,目前调用函数只支持 tpl和php两种文件的调用
小说明:在后续的教程中,会分别对各个模板文件中的各种标签进行详细的介绍和举例,到时候会说明每种标签属于上面的那一类,所以请理解上面的分类的特点,帮助以后再标签使用中明确其作用。