模板织梦内容管理系统模板代码参考

织梦内容管理系统  时间:2021-03-20  阅读:()

织梦内容管理系统模板代码参考

解析引擎概述 模板设计规范 代码参考

标记参考 arc list(artlis t,lik eart,hotart,imglist,imgin fo lis t,coo lart,specart) fie ld channe lmytag vote friendlink mynews loop channelartlist page list pagelist pagebreakfieldlist

--------------------------------------------------------------------------------

一、织梦模板解析引擎概述

在了解DedeCms的模板代码之前 了解一下织梦模板引擎的知识是非常有意义的。织梦模板引擎是一种使用XML名字空间形式的模板解析器使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性感觉上就像在用HTML一样使模板代码十分直观灵活新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。

1、织梦模板引擎的代码样式有如下几种形式

{dede:标记名称属性='值'/}

{dede:标记名称属性='值'} {/dede:标记名称}

{dede:标记名称属性='值'}自定义样式模板(InnerTe xt){/ded e:标记名称}

提示

对于{dede:标记名称属性='值'} {/dede:标记名称}这种形式的标记在2.1版中表示结束只需要用“{/dede}”但

V3中需要严格用“{/dede:标记名称}”否则会报错。

2、织梦模板引擎内置有多个系统标记这些系统标记在任何场合都是能直接使用的。

(1)global标记表示获取一个外部变量除了数据库密码之外能调用系统的任何配置参数形式为

{dede:global name='变量名称'} {/dede:glob al}

{dede:global name='变量名称' /}

其中变量名称不能加$符号如变量$cfg_cmspath应该写成{dede:globalname='cfg_cmsp ath' /} 。

(2)fore ach用来输出一个数组形式为

{dede:foreach array='数组名称'}[field:key/] [field:value/]{/de de:foreach}

(3) inc lude引入一个文件形式为

{dede:include file='文件名称' /}

对文件的搜索路径为顺序为绝对路径、 include文件夹 CMS安装目录 CMS主模板目录

3、织梦标记允许在任何标记中使用函数对得到的值进行处理形式为

{dede:标记名称属性='值'function='youfunction("参数一","参数二","@me")'/}其中@me用于表示当前标记的值其它参数由你的函数决定是否存在例如{dede:field name='pubdate'function='strftime("%Y-%m-%d%H:%M:%S","@me")' /}

4、织梦标记允许有限的编程扩展。

格式为

{ded e:tagname runp hp='ye s'}

$aaa=@me;

@me="123456";

{/dede:tagname}

@me表示这个标记本身的值 因此标记内编程是不能使用echo之类的语句的只能把所有返回值传递给@me。

此外由于程序代码占用了底层模板Inner Te xt的内容 因此需编程的标记只能使用默认的Inne r Te xt。

二、 DedeCms模板制作规范

DedeCms系统的模板是非固定的用户可以在新建栏目时可以自行选择栏目模板官方仅提供最基本的默认模板 即是内置系统模型的各个模板 DedeCms支持自定义频道模型用户自定义新频道模型后需要按该模型设计一套新的模板。

一、概念设计和使用模板必须要理解下面几个概念

1、板块封面模板

指网站主页或比较重要的栏目封面使用的模板一般用“index_识别ID.htm”命名此外用户单独定义的单个页面或自定义标记也可选是否支持板块模板标记如果支持系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。

2、列表模板

指网站某个栏目的所有文章列表的模板一般用“li st_识别ID.htm”命名。

3、档案模板

表示文档查看页的模板一般用“artic le_识别ID.htm”命名。

4、其它模板

一般系统常规包含的模板有主页模板、搜索模板、  、  编译功能模板等此外用户也可以自定义一个模板创建为任意文件。

二、 命名为了规范起见织梦官方建议使用统一的方式来命名模板具体如下

1、模板保存位置

模板目录 cmsp ath/temp lets/样式名称英文默认为default其中system为系统底层模板 plus为插件使用的模板 /具体功能模板文件

你的模板位置 “/templets/{风格名称}/功能模板文件” 点击此浏览模板目录

2、 模板文件命名规范

   index_识别ID.htm 表示板块栏目封面模板

   li st_识别ID.htm 表示栏目列表模板

   artic le_识别ID.htm 表示内容查看页文档模板包括专题查看页 

 searc h.htm 搜索结果列表模板

   index.htm 主页模板

注解

你的系统各个内容频道的[识别ID]分别为 (普通文章=>article) (F lash=>flash) (图片集=>ima ge) (软件=>s o ft) (专题=>sp e c)

例 lis t_ima ge.htm表示是就是内容类型为图片集的栏目默认列表模板。

三、主要标记参考

1、 arc list标记

这个标记是De deCms最常用的一个标记其中ho tart、 c oolart、 lik eart、 artli st、imglist、 imginfo li st、 sp ecart这些标记都是由这个标记所定义的不同属性延伸出来的。

作用获取一个指定的文档列表

适用范围封面模板、列表模板、文档模板

(1)基本语法

{dede:arc listtypeid=''row='' col='' titlelen=''info le n=' ' imgwidth='' imghe i ght=' ' lis ttype=''orderb y=''keywo rd=''}

自定义样式模板(I nne rTe xt)

{/dede:arc list}

本标记等同于artlis t、 imglis t、 img info list标记其中与artlis t是完全等同的与imglis t、 imginfo l is t仅是默认的底层模板不同。

(2)属性参考

[1] typ e id=' '表示栏目ID在列表模板和档案模板中一般不需要指定在封面模板中允许用","分开表示多个栏目

[2]row=''表示返回文档行数如果和col联合使用刚结果数等于row*col

[3]col=''表示分多少列显示默认为单列 

[4] titlelen=' '表示标题长度

[5] info le n=''表示内容简介长度

[6] imgw id th=''表示缩略图宽度

[7] imghe ight=''表示缩略图高度

[8] type=''表示档案类型其中默认值或type='all'时为普通文档

§type='commend'时表示推荐文档等同于

§typ e='ima ge'时表示必须含有缩略图片的文档

[9]orderby=' '表示排序方式默认值是s enddate按发布时间排列。

§orderby='hot'或orderb y='click'表示按点击数排列

§orderb y='pub date'按出版时间排列即是前台允许更改的时间值

§orderby='s ortrank'按文章的新排序级别排序如果你想使用置顶文章则使用这个属性

§orderb y='id'按文章ID排序

[10]ke ywo rd=''表示含有指定关键字的文档列表多个关键字用","分开

[11] channe lid='数字'表示特定的频道类型 内置的频道专题(-1)、文章(1)、 图集

(2)、 Flash(4)、软件(3)

[12] limi t='起始,结束'表示限定的记录范围 ro w属性必须等于"结束-起始"mysq l的limit语句是由0起始的如“limit 0,5”表示的是取前五笔记录 “l imit 5,5”表示由第五笔记录起取下五笔记录。

(3)底层模板变量

ID(同id),title,iscommend,color,typeid,ismake,description(同info),pubdate,se nddate,arcrank,click,litp ic(同pic name),typed ir,typ ename,arc ur l(同file na me),typ e ur l,s time(pub da te的"0000-00-00"格式),te xt link,typ e l ink,i mglin k,ima ge

其中textlink=<a hre f='arcurl'>title</a>typelink=<a href='typeurl'>typename</a>im glink=<a hre f='arcurl'><img src='p ic na me'b order='0'wid th='imgw id th'he i ght='imghe ight'></a>ima ge=<img s rc='p ic na m e'b order='0'wid th='imgw idth'he ig ht='imghe ight'>

变量调用方法 [fie ld:varname/]

如

{dede:arclist info len='100'}

[fie l d:te xtlink/]

<br>

[field:info/]

<br>

{/dede:arc list}

2、 field标记

这个标记用于获取特定栏目或档桉的字段值及常用的环境变量值

适用范围封面模板、列表模板、文档模板

(1)基本语法

{dede:field name=''/}

(2)name属性的值

板块模板 php url,inde xurl,in dexname,te mp leturl,membe rurl,p owerb y,web name,specurl列表模板pos iti on,title,p hp url,te mp leturl,me mberurl,po werby,inde xurl,inde xname,s pecurl,栏目表dede_arctype的所有字段

其中position为“栏目一>栏目二”这样形式的链接 title则为这种形式的标题文档模板pos itio n,p hp url,temp leturl,memberurl,powerby,in dexurl,ind exname,specurl,id(同ID,aid),档案dede_arc hive s表和附加表的所有字段。

3、 channe l标记

用于获取栏目列表

适用范围封面模板、列表模板、文档模板

(1)基本语法

{dede:channel row='' type=''}

自定义样式模板(I nner Te xt)

{/dede:channel}

(2)属性

[1]ro w='数字'表示获取记录的条数通用在某级栏目太多的时候使用默认是8

[2] typ e=top,s un,se lftyp e='top'表示顶级栏目typ e='s un'表示下级栏目type='self'表示同级栏目

其中后两个属性必须在列表模板中使用。

(3)底层模板变量

ID,typename,typedir,type link(这里仅表示栏目的网址)

例

{dede:channel type='top'}

<a hre f='[fie ld:type link/]'>[fie ld:typename/]</a>

{/dede:channel}

4、myta g标记

用于获取自定义标记的内容

适用范围封面模板、列表模板、文档模板

(1)基本语法

{de de:mytag type id=''name=' ' ismake='' /}

(2)属性

[1] typ e id='数字'表示栏目ID默认为0在没有设定的栏目没有定义这个名称的标记会按如下搜索方式来搜索“先向上查找父栏目->通用标记typ e id=0的同名标记”。

[2]name=''标记名称。

[3] is make=yes|no默认为no表示myta g里的内容不包含其它封面模板的标记 ye s则表示标记内容含有其它封面模板标记。

5、 vo te标记

用于获取一组投票表单

适用范围封面模板

(1)基本语法

{dede:vote id='投票ID' linehe ight='22'tab lewidth='100%' titleb gco lor='#EDEDE2'titlebac kgro und='' tab lebgco lor='#FFFFFF'}

{/dede:vote}

6、 friend link标记等同flink

用于获取友情链接

适用范围封面模板

(1)基本语法

{dede:flink type=''row=''col='' titlelen=' ' tab le style=''} {/dede:flink}属性注解

[1]type链接类型值a. te xta ll全部用文字显示b. te xt im age文字和图得混合排列c. te xt仅显示不带Lo g o的链接d. im age仅显示带Lo go的链接

-------------------------------------

[2]ro w显示多少行默认为4行

[3]col显示多少列默认为6列

[4]titlelen站点文字的长度

[5]tab le style 表示<tab le这里的内容>

7、mynews标记

用于获取站内新闻

适用范围封面模板

(1)基本语法

{dede:mynew s ro w='条数'title le n='标题长度'}Innerte xt{/de de:mynews}Innerte xt支持的字段为 [fie ld:title/],[fie ld:writer/],[fie ld:se ndd ate/](时间),[field:body/]

8、 loop标记

用于调用任意表的数据一般用于调用论坛贴子之类的操作请参阅论坛扩展插件。

9、 channe lartlist标记

用于获取频道的下级栏目的内容列表

适用范围封面模板

语法

{dede:channelArtlist typ eid=0 col=2 tablewidth='100%'}

<tab le width="99%"b order="0"cellp adding="3" cellspacing="1"b gc olor="#BFC FA9"><tr>

<td bgcolor="#E6F2CC">

{dede:type}

<tab le bo rder="0"c e llpadding="0" cellspac ing="0"width="98%">

<tr>

<td width='10%'a lign="ce nter"><img src='[fie ld:glo ba lname='cfg_p lus_d ir'/]/img/channe llis t.gif'width='14'he ight='16'></td>

<td width='60%'>

<a href="[field:typelink/]">[field:typename/]</a>

</td>

<td width='30%'align='right'>

<a href="[field:typelink/]">更多. . .</a>

</td>

</tr>

</tab le>

{/dede:type}

</td>

</tr>

<tr>

<td height="150"valign="top"bgcolor="#FFFFFF">

{dede:arc list row="8"}

·<a href="[field:arcurl/]">[field:title/]</a><br>

{/de de:arc lis t}

</td>

</tr>

</tab le>

<div style='font-size:2px'>&nb sp;</div>

{/dede:channe lArtlist}channe lArtlist是唯一一个可以直接嵌套其它标记的标记不过仅限于嵌套{dede:type} {/de de:type}和{dede:arc list} {/ded e:arc list}

标记。

(1)属性typ e id=0频道ID,默认的情况下嵌套的标记使用的是这个栏目ID的下级栏目如果你想用特定的栏目可以用","分开多个ID。col=2分多列显示tablewidth='100%'外围表格的大小

10、 page标记

表示分页页面的附加参数

适用范围列表模板

语法

{dede:page pagesize="每页结果条数"/}

11、 list标记

表示列表模板里的内容列表

语法

{dede:list co l='' titlelen=' 'info len='' imgwidth='' imghe ight=''orderb y=''} {/d ed e:lis t}

底层模板变量

ID(同id),title,isc ommend,color,typeid,ismake,description(同info),pubdate,send date,arcrank,c lick,litp ic(同pic name),typ ed ir,type name,arc ur l(同file na me),typ e ur l,st ime(p ub date的"0000-00-00"格式),te xt li nk,typ e link,img link,ima ge

12、 pagelist标记

表示分页页码列表

适用范围列表模板

Raksmart VPS主机如何设置取消自动续费

今天有看到Raksmart账户中有一台VPS主机即将到期,这台机器之前是用来测试评测使用的。这里有不打算续费,这不面对万一导致被自动续费忘记,所以我还是取消自动续费设置。如果我们也有类似的问题,这里就演示截图设置Raksmart取消自动续费。这里我们可以看到上图,在对应VPS主机的【其余操作】中可以看到默认已经是不自动续费,所以我们也不要担心被自动续费的。当然,如果有被自动续费,我们确实不想续费的...

vpsdime:VPS内存/2核/VPS,4G内存/2核/50gSSD/2T流量/达拉斯机房达拉斯机房,新产品系列-Windows VPS

vpsdime上了新产品系列-Windows VPS,配置依旧很高但是价格依旧是走低端线路。或许vpsdime的母公司Nodisto IT想把核心产品集中到vpsdime上吧,当然这只是站长个人的猜测,毕竟winity.io也是专业卖Windows vps的,而且也是他们自己的品牌。vpsdime是一家新上来不久的奇葩VPS提供商,实际是和backupspy以及crowncloud等都是同一家公司...

HostYun 新增可选洛杉矶/日本机房 全场9折月付19.8元起

关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...

织梦内容管理系统为你推荐
信用卡applephpwindPHPWIND和DISCUZ有什么区别uctoolsDiscuz! X3管理员可以查询某个用户登录IP的历史记录吗?支付宝蜻蜓发布支付宝蜻蜓f4,可以让没有支付宝的人刷脸付款?360防火墙在哪里怎么查找到360防火墙在自己电脑里的位置?并且关闭掉温州商标注册温州注册公司在哪里注册电子商务世界电子商务都有什么内容400电话查询如何辨别400电话的真伪?discuz伪静态Discuz! X3.0 到底能不能伪静态?门户怎么伪静态?如何发帖子怎么发帖啊
老域名 burstnet 国外php主机 宕机监控 国内加速器 圣诞节促销 网通代理服务器 ibox官网 100m免费空间 阿里云浏览器 jsp空间 免费phpmysql空间 跟踪路由命令 中国电信测速器 网页提速 便宜空间 畅行云 qq金券 阿里云个人邮箱 asp空间 更多