DEDECMS模板标签语法简介
基本介绍
DEDECMS(织梦内容管理系统)的模板标签类似于XML格式,所有的模板都含有定界符,一般情况下,定界符是{dede:*}
和{/dede:*}
的形式,*”代表具体的模板标记名称,这些标签通常成对出现,如{dede:arclist}
和{/dede:arclist}
,中间包含底层模板(Innertext),用于定义具体输出样式。
常用标签及其功能
1、arclist:用于获取指定文档列表,其属性包括flag、limit等,可以控制显示内容和数量,示例如下:
{dede:arclist flag='h' limit='0,1'} <a href="[field:arcurl/]">[field:title/]</a> {/dede:arclist}
2、global:用于调用全局变量,如网站名称、配置信息等。
{dede:global.cfg_webname/}
3、mytag:用于获取自定义宏标记的内容,示例如下:
{dede:mytag typeid='0' name=''/}
4、sql:允许直接在模板中执行SQL查询并返回结果,示例如下:
{dede:sql sql='Select * from dede_archives where mid=1'} <a href='/plus/view.php?aid=[field:id/]' target='_blank'>[field:title/]</a> {/dede:sql}
5、type:表示指定的单个栏目的链接,示例如下:
{dede:type} <a href="[field:typelink/]">[field:typename/]</a> {/dede:type}
模板注释与函数
DEDECMS的模板注释非常灵活,可以通过标签后面的commet属性进行赋值,以帮助理解标签的意义。
{dede:arclist flag='h' limit='0,1' commet='调用头条的第一篇内容'} [field:title/] {/dede:arclist}
每个标签都可以使用自定义函数对其进行扩展,自定义函数主要用于对当前标签输出内容进行处理。
{dede:field.pubdate function='strftime("%Y%m%d %H:%M:%S","@me")'/}
模板编程
DEDECMS支持简单的模板编程,通过在标签内嵌入PHP代码实现更多功能。
{dede:tagname runphp='yes'} $aaa = @me; @me = "123456"; {/dede:tagname}
需要注意的是,由于程序代码占用了底层模板的内容,编程的标签只能使用默认的InnerText。
相关问答FAQs
1、问:如何在DEDECMS模板中调用最新的一篇文章?
答:可以使用arclist标签并设置相应的属性来实现。
{dede:arclist flag='h' limit='0,1'} <a href="[field:arcurl/]">[field:title/]</a> {/dede:arclist}
2、问:如何在DEDECMS模板中调用站内新闻?
答:可以使用mynews标签来实现。
{dede:mynews row='10' titlelen='30'} [field:title/] [field:writer/] <br/> [field:senddate function="strftime('%Y%m%d %H:%M',@me)"/] <br/> [field:body/] {/dede:mynews}
标签名称 | 语法示例 | 功能描述 |
{dede:field name='title'/} |
{dede:field name='title'/} |
显示当前文档的标题 |
{dede:field name='source'/} |
{dede:field name='source'/} |
显示当前文档的来源 |
{dede:field name='writer'/} |
{dede:field name='writer'/} |
显示当前文档的作者 |
{dede:field name='pubdate'/} |
{dede:field name='pubdate'/} |
显示当前文档的发布日期 |
{dede:field name='tags'/} |
{dede:field name='tags'/} |
显示当前文档的标签 |
{dede:field name='click'/} |
{dede:field name='click'/} |
显示当前文档的点击次数 |
{dede:field name='arcurl'/} |
{dede:field name='arcurl'/} |
显示当前文档的URL链接 |
{dede:field name='id'/} |
{dede:field name='id'/} |
显示当前文档的ID |
{dede:arclist limit=10/} |
{dede:arclist limit=10/} |
显示一定数量的文章列表,limit 参数可指定显示文章数量 |
{dede:channel type='self'/} |
{dede:channel type='self'/} |
显示当前栏目的名称 |
{dede:channel type='self' name=''/} |
{dede:channel type='self' name=''/} |
显示当前栏目的名称,name 参数可指定要显示的栏目名称 |
{dede:channel type='son'/} |
{dede:channel type='son'/} |
显示当前栏目的子栏目列表 |
{dede:channel type='son' name=''/} |
{dede:channel type='son' name=''/} |
显示当前栏目的子栏目列表,name 参数可指定要显示的栏目名称 |
{dede:sql sql='SELECT * FROM table WHERE field=value'/} |
{dede:sql sql='SELECT * FROM table WHERE field=value'/} |
执行SQL查询语句并显示结果 |
{dede:include file='filename.html'/} |
{dede:include file='filename.html'/} |
包含指定文件的内容 |
{dede:loop name='list' source='sql'/} |
{dede:loop name='list' source='sql'/} |
循环显示SQL查询结果,name 为循环变量名,source 为SQL查询语句 |
{dede:loop name='list' source='array'/} |
{dede:loop name='list' source='array'/} |
循环显示数组内容,name 为循环变量名,source 为要循环的数组 |
{dede:pagebreak/} |
{dede:pagebreak/} |
在文章中添加分页符 |
{dede:pagelist listsize=5/} |
{dede:pagelist listsize=5/} |
显示分页导航,listsize 参数可指定显示的分页链接数量 |
{dede:archives type='flag'/} |
{dede:archives type='flag'/} |
显示带有特定标志的文章列表 |
{dede:archives type='click'/} |
{dede:archives type='click'/} |
显示点击量最高的文章列表 |
{dede:archives type='rand'/} |
{dede:archives type='rand'/} |
显示随机文章列表 |
上述表格中的语法示例仅供参考,具体使用时可能需要根据实际情况进行调整,DEDECMS模板标签语法较为丰富,这里仅列出了部分常用标签及其功能描述。