织梦官方织梦CMS模板制作手册.docx

上传人:b****6 文档编号:7544696 上传时间:2023-05-11 格式:DOCX 页数:69 大小:44.50KB
下载 相关 举报
织梦官方织梦CMS模板制作手册.docx_第1页
第1页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第2页
第2页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第3页
第3页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第4页
第4页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第5页
第5页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第6页
第6页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第7页
第7页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第8页
第8页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第9页
第9页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第10页
第10页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第11页
第11页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第12页
第12页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第13页
第13页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第14页
第14页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第15页
第15页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第16页
第16页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第17页
第17页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第18页
第18页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第19页
第19页 / 共69页
织梦官方织梦CMS模板制作手册.docx_第20页
第20页 / 共69页
亲,该文档总共69页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

织梦官方织梦CMS模板制作手册.docx

《织梦官方织梦CMS模板制作手册.docx》由会员分享,可在线阅读,更多相关《织梦官方织梦CMS模板制作手册.docx(69页珍藏版)》请在冰点文库上搜索。

织梦官方织梦CMS模板制作手册.docx

织梦官方织梦CMS模板制作手册

织梦织梦CMS模板制作手册

版本:

20120312

编写:

天涯

上海卓卓网络科技有限公司

Copyright2002-2012DesDevINC.Allrightsreserved.

2

Copyright2002-2012DesDevINC.Allrightsreserved.

目录2

版权申明6

前言7

简介7

主题7

发行方法7

手册Web站点7

最后8

第一章织梦模板设计师要求9

1.1设计师定义9

1.2设计师级别划分及要求9

第二章模板制作流程10

第三章模板文件及目录结构11

3.1模板目录11

3.2模板文件与功能说明11

3.2.1概念,设计和使用模板12

3.2.2命名规则12

3.3其它模板说明13

第四章模板引擎介绍14

4.1静态模板引擎14

4.1.1核心文件14

4.1.2功能描述14

4.1.3模板语法14

4.2动态模板引擎15

3

Copyright2002-2012DesDevINC.Allrightsreserved.

4.2.1核心文件15

4.2.2功能描述16

4.2.3使用方法16

4.2.4标记语法16

4.3模板标签19

4.3.1标签介绍19

4.3.2标签的分类19

第六章标签参考20

6.1全局标签20

arclist文档列表20

arclistsg独立单表模型文档列表23

arcpagelistarclist列表分页24

autochannel指定栏目25

cattree树形类目26

channel获取栏目列表标签26

channelartlist当前频道的下级栏目的内容列表29

feedback评论内容32

field内容变量34

flink友情链接35

flinktype友情链接类型36

global全局配置变量标签37

hotwords搜索关键词37

jsonJSON数据调用38

loop万能调用标签41

memberlist会员列表42

myad广告44

mynews站内新闻46

mytag自定义宏标签48

phpphp标签49

softmsg软件下载提示信息50

4

Copyright2002-2012DesDevINC.Allrightsreserved.

sonchannel子栏目调用52

sqlSQL查询标签53

tagTAG调用标签55

type指定栏目调用标签56

vote投票标签57

6.2列表标签57

list列表数据标签57

pagelist列表分页标签59

6.3内容标签60

likearticle相关文档60

pagebreak内容分页标签61

pagetitle分页标题63

prenext获取上一篇、下一篇内容65

fieldlist当前模型内容页字段列表66

6.4模块标签68

bookcontentlist连载图书最新内容调用68

booklist连载图书调用69

group圈子调用标签70

groupthread圈子主题调用标签71

6.5其他标签72

infoguide分类信息的地区与小分类搜索72

infolink分类信息地区与类型快捷链接73

第七章模板扩展75

7.1标签扩展75

7.1.1定义标签75

7.1.2标签文件内容结构75

7.1.3属性处理76

7.1.4底层模板处理77

7.2常用函数78

cn_substr78

5

Copyright2002-2012DesDevINC.Allrightsreserved.

Html2Text79

Text2Html79

MyDate80

GetDateTimeMk81

FloorTime82

HtmlReplace82

RemoveXSS83

6

Copyright2002-2012DesDevINC.Allrightsreserved.

版权申明

发布本资料须遵守开放出版许可协议1.0或者更新版本;

未经版权所有者明确授权,禁止发行本文档及其被实质上修改的版本;

未经版权所有者事先授权,禁止将此作品及其衍生作品以标准(纸质)书籍形式发行;

如果有兴趣再发行或再版本手册的全部或部分内容,不论修改过与否,或者有任何问题,请联系版权所有

者tianya(AT)。

对DedeCMS及本手册有任何疑问或者建议,请进入官方论坛发布相关讨论。

并在

此感谢所有参与到DedeCMS项目中的朋友。

有关DedeCMS项目及本文档的最新资料,请及时访问官方主站。

本文档及其描述的内容受有关法律的版权保护,对本文档内容的任何形式的非法复制,泄露或散布,将导

致相应的法律责任。

7

Copyright2002-2012DesDevINC.Allrightsreserved.

前言

简介

本手册是织梦官方推出,用于介绍织梦内容管理系统(以下简称:

DedeCMS)模板的制作,为织梦模

板设计师提供一份快速检索的操作文档,全面介绍了织梦的模板引擎、标签及常用函数,相信会大大提高

模板设计师的制作效率。

DedeCMS的模板引擎采用了官方自行研发的Dede模板引擎,类XML结构的标签简单易懂,便于在

网页编辑器中进行编辑。

同时标签齐全,应用广泛,这为基于DedeCMS建设开发的站点提供了一个良好

的基础,只需要懂HTML就可以搭建您想要的站点,这也是DedeCMS风靡的一个重要因素。

主题

手册将会从以下几个部分进行重点的说明:

织梦模板设计师要求

模板制作流程

模板文件及目录结构

模板引擎介绍

模板标签

模板扩展

发行方法

手册包含在线阅读、PDF、CHM几种发行方式,您可以登录织梦帮助中心来获取最新版本。

手册Web站点

您可以通过手册Web站点同官方取得交流,以及分享您在制作过程中的心得。

8

Copyright2002-2012DesDevINC.Allrightsreserved.

帮助中心:

织梦技术论坛:

最后

编写这本手册,我们不希望他是一个人的项目,希望他有更多热爱织梦、热爱中国开源事业的朋友参

与进来。

同时也需要对使用、支持DedeCMS的每一位用户提供的帮助、贡献、意见、评论、精神支持以

及耐心表示感谢。

9

Copyright2002-2012DesDevINC.Allrightsreserved.

第一章织梦模板设计师要求

本章节介绍织梦模板制作人员所需要的基本条件、所需相关技术。

便于企业、单位招聘选择适合自身

发展的从业人员及对员工进行定位、培训。

1.1设计师定义

能够设计、制作DedeCMS程序模板的人员。

1.2设计师级别划分及要求

这里根据建站需求,我们将织梦模板设计师进行一个大致的划分:

初级:

能够对模板进行修改,例如:

元素布局、调用内容等。

需要掌握基本的HTML,图形图像处理技术,

同时需要对织梦的常用标签有大致的了解。

中级:

能够根据设计稿输出页面、嵌套标签,并能够灵活调用DedeCMS内容。

需要熟练掌握Div+CSS、

Javascript,DedeCMS的模板标签用法,同时需要有一些基本的PHP、MySQL尝试。

高级:

能够独立设计网站界面,并能够输出页面、嵌套标签,同时能够根据自己需求扩展编写自己需要的

标签以达到站点所需效果。

需要熟练掌握图形图像网页设计相关技术、PHP、Javascitpt(jQuery)、织梦模

板引擎。

10

Copyright2002-2012DesDevINC.Allrightsreserved.

第二章模板制作流程

织梦模板制作需要经过以下几个流程:

①设计页面效果图,一般为PSD或者PNG格式的原图;

②将页面效果图输出为HTML格式,后缀名为“.htm”;

③根据页面内容调用需求生成或者编写标签所需代码;

④嵌套标签代码到输出页面对应位置;

⑤测试调试模板文件,保证调用和设计效果一致;

⑥将模板标签、文件上传到模板目录;

⑦在系统设定模板目录,重新生成全站;

11

Copyright2002-2012DesDevINC.Allrightsreserved.

第三章模板文件及目录结构

3.1模板目录

系统的模板目录在系统根目录下的templets内,下面是模板目录的文件目录结构。

templets

├─default······默认模板目录

│├─images······模板图片目录

││├─mood

││└─photo

│├─js·······模板JS脚本目录

│└─style····模板CSS样式目录

├─lurd········LURD系统模板

├─plus·········插件模板目录

├─system······系统底层模板目录

└─wap······WAP模块模板目录

3.2模板文件与功能说明

DedeCMS系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基

本的默认模板,即是内置系统模型的各个模板,由于DedeCMS支持自定义频道模型,用户自定义新频道

模型后,还需要按该模型的字段设计一套新的模板。

此外,DedeCMS也支持使用风格的形式使用模板,默认风格是default,它表示系统默认使用

{cmspath}templetsdefault这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除default原

有的文件,把下载的模板文件夹命名你想要的风格名称,如style2等,然后在后台修改了默认的模板风格

名称为style2,那系统将使用{cmspath}templetsstyle2这文件当作默认模板,但是若你手工指定了栏目模

板的位置,则后台参数风格的定义无效。

12

Copyright2002-2012DesDevINC.Allrightsreserved.

3.2.1概念,设计和使用模板

板块(封面)模板

指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别ID.htm”命名,此外,用户单

独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎

去解析后才输出内容或生成特定的文件。

列表模板

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

档案模板:

表示文档查看页的模板,如文章模板,一般用“article_识别ID.htm”命名。

其它模板:

一般系统常规包含的模板有:

主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定

义一个模板创建为任意文件。

3.2.2命名规则

模板保存位置

模板目录:

{cmspath}templets样式名称(英文,默认为default,其中system为系统底层模板,plus

为插件使用的模板)具体功能模板文件}

模板文件命名规范

1index_识别ID.htm:

表示板块(栏目封面)模板;

2list_识别ID.htm:

表示栏目列表模板;

3article_识别ID.htm:

表示内容查看页(文档模板,包括专题查看页);

4search.htm:

搜索结果列表模板;

5index.htm:

主页模板;

注:

[识别ID]可以在“频道模型管理”的地方获得,当然,你也可以在“频道模型管理”的地方确定某个频道

13

Copyright2002-2012DesDevINC.Allrightsreserved.

的模板命名。

例:

list_image.htm表示是就是内容类型为图片集的栏目默认列表模板。

article_article.htm表示的是文章查看页模板。

3.3其它模板说明

默认底层模板

位置:

{cmspath}templetssystem

功能:

在没有指定标记的默认底层模板的时候,系统将自动调用这个文件夹的相应文件作为底层模板。

插件目录模板

位置:

{cmspath}templetsplus

功能:

评论、友情链接、RSS地图等模板。

会员后台模板

位置:

{cmspath}membertemplets

功能:

会员后台的模板。

系统后台模板

位置:

{cmspath}dedetemplets

功能:

系统后台管理的模板

14

Copyright2002-2012DesDevINC.Allrightsreserved.

第四章模板引擎介绍

DedeCMS从V5开始采用了解析式引擎与编译式引擎并存的模式,由于在生成HTML时,解析式引擎拥有

巨大的优势,但对于动态浏览的互动性质的页面,编译式引擎更实用高效,织梦CMS采用双引擎并存的

模式,在保持标签风格一致性的同时,也保证将来开发更多互动模块时有更好的性能。

4.1静态模板引擎

4.1.1核心文件

includededetag.class.php

4.1.2功能描述

DedeCMSV5.3及之前版本使用的主要的模板类,它是解析式模板类,并非编译式的。

注:

编译式是通过获得标签位置进行内容替换,编译式是直接解析为PHP代码,二次执行。

4.1.3模板语法

织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是

可以轻松的制定标记的属性,感觉上就像在用HTML一样,使模板代码十分直观灵活,新版的织梦模板引

擎不单能实现模板的解析还能分析模板里错误的标记。

织梦模板引擎的代码样式

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

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

{dede标记名称属性='值'}自定义样式模板(InnerText){dede标记名称}

注:

如果使用带底层模板的标记,必须严格用{dede标记名称属性='值'}{dede标记名称}这种格式,否

则会报错。

内置系统标记

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

{dedeglobalname='变量名称'}{dedeglobal}

15

Copyright2002-2012DesDevINC.Allrightsreserved.

{dedeglobalname='变量名称'}

其中变量名称不能加$符号,如变量$cfg_cmspath,应该写成{dedeglobalname='cfg_cmspath'}。

②foreach用来输出一个数组,形式为:

{dedeforeacharray='数组名称'}[fieldkey][fieldvalue]{dedeforeach}

③include引入一个文件,形式为:

{dedeincludefile='文件名称'ismake='是否为dede板块模板(yesno)'}

对文件的搜索路径为顺序为:

绝对路径、include文件夹,CMS安装目录,CMS主模板目录

自定义函数使用

{dede标记名称属性='值'function='youfunction(参数一,参数二,@me)'}

其中@me用于表示当前标记的值,其它参数由你的函数决定是否存在,例如:

{dedefieldname='pubdate'function='strftime(%Y-%m-%d%H%M%S,@me)'}

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

格式为:

{dedetagnamerunphp='yes'}

$aaa=@me;

@me=123456;

{dedetagname}

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

@me。

此外由于程序代码占用了底层模板InnerText的内容,因此需编程的标记只能使用默认的InnerText。

4.2动态模板引擎

4.2.1核心文件

includededetemplate.class.php

4.2.2功能描述

用于非核心模块的动态页面或列表页的模板解析,如:

membercontent_list.php,通常是在

16

Copyright2002-2012DesDevINC.Allrightsreserved.

datalistcp.class.php中使用,这个类在动态运行的情况下,由于本身是把模板编译成PHP的,因此性能上

会优级于旧的解析类,这个方法将在未来版本中作为通用的方式。

4.2.3使用方法

$tpl=newDedeTemplate(

模板对象实例名称,通常是'tpl',

[模板存放目录(生成缓存时会存放在这个目录),

include语法默认引用目录]

);

通常情况下参数二和参数三是不必要的,如:

$tpl=newDedeTemplate('tpl');

如果在类文件中调用,应该加上设置:

$this-tpl-SetObject($this);

在一些块调用中默认将使用当前类的成员函数。

$tpl-LoadTemplate(模板的物理路径);

如果模板中带有{dedeconfigname=''value=''}

可以在载入模板后,通过$tpl-GetConfig($name)获得这些变量的值。

显示页面或保存页面为文件

$tpl-Display();

$tpl-SaveTo(物理绝对路径的文件名);

4.2.4标记语法

标记通用特性

①短标记

{dedetagname.name}

等同于

{dedetagnamename=''}

②块标记

17

Copyright2002-2012DesDevINC.Allrightsreserved.

{dedetagname}

循环代码

{dedetagname}

标记的具体语法及对应的PHP代码

①配置变量

{dedeconfigname=''value=''}

配置变量可以在载入模板后通过$tpl-GetConfig($name)获得,仅作为配置,不在模板中显示。

②短标记

{dedeglobal.name}外部变量等同于phpecho$name;

{dedevar.name}var数组等同于phpecho$_vars['name'];

{dedefield.name}field数组等同于phpecho$fields['name'];

{dedecfg.name}系统配置变量等同于phpecho$cfg_name;

考虑到大多数情况下都会在函数或类中调用模板,因此$_vars、$fields数组必须声明为global数组,否

则模板引擎无法获得它的值从而导致产生错误。

③自由调用块标记

{tagblocknamebind='GetArcList'bindtype='class'}

循环代码

{tagblockname}

必要属性:

bind数据源来源函数

bindtype函数类型,默认是class可选为sub

rstype返回结果类型,默认是array,可选项为string

自定义函数格式必须为function(array$atts,object$refObj,array$fields);

在没有指定bind绑定的函数的情况下,默认指向MakePublicTag($atts,$tpl-refObj,$fields)统一管理。

④固定块标记

1.datalist

从绑定类成员函数GetArcList中获取数组并输出

{dededatalist}

循环代码

{dededatalist}

18

Copyright2002-2012DesDevINC.Allrightsreserved.

遍历一个二给维数组,数据源是固定的,只适用用类调用。

等同于

{tagblocknamebind='GetArcList'bindtype='class'rstype='arrayu'}

循环代码

{tagblockname}

2.label

从绑定函数中获取字符串值并输出

等同于{tagblocknamebind='func'bindtype='sub'rstype='string'}

3.pagelist

从绑定类成员函数GetPageList中获取字符串值并输出

等同于{tagblocknamebind='GetPageList'bindtype='class'rstype='string'}

4.include

{dedeincludefile=''}

{dedeincludefilename=''}

5.php

{dedephp

php代码

}

{dedephp}

php代码

{dedephp}

6.If

仅支持if,else,else直接用{else}表示,但不支持{elseif}这样的语法,一般建议模板中不要使用太复杂

的条件语法,如果确实有需要,可以直接使用php语法。

{dedeif条件}a-block{else}b-block{dedeif}

条件中允许使用var.name、global.name、field.name、cfg.name表示相应的变量。

如:

{dedeiffield.id10}

{dedeif}

19

Copyright2002-2012DesDevINC.Allrightsreserved.

7.遍历一个array数组

{dedearray.name}

{dedekey}={dedevalue}

{dedearray}

各种语法的具体编译后的代码,可查看dedetemplate.class.php的functionCompilerOneTag(&$cTag)。

4.3模板标签

4.3.1标签介绍

从上面的章节中我们可以获知,织梦模板引擎分为编译式和解析式,系统的标签同样也有这样的划分。

我们在系统涉及到内容管理及生成HTML的地方大多采用了解析式的模板标签,一些互动部分的功能,如

果使用了织梦编译式的模板引擎,也会涉及到编译式的标签,在模板制作和日常的站点维护中,我们大多

接触的是解析式的模板标签,也是本章标签介绍的重点。

解析式标签所在的目录为系统根目录下includetaglib中,编译式涉及到的标签文件存在放根目录下

includetpllib中,这部分的扩展内容会在随后的章节中详细介绍。

4.3.2标签的分类

每个标签都会有他的作用域,上文中我们可以了解系统文档页面可以分为:

封面、列表、内容几个部

分,每个页面的模板则会涉及到不同的标签,所以标签也有了他的作用域,我们在模板制作过程中主要根

据模板的作用域来对模板进行如下划分:

全局标签

可以在前台文档任意页面使用的模板标记,例如:

arclist、channel、sql、loop等。

列表标签

仅在模板_list.htm中可以使用的标签,例如:

list、pagelist。

内容标签

仅在模板_.article.htm中可以使用的模板标记,例如:

likearticle、pagebreak等。

模块标签

仅在特定的模块、插件中使用的模板标记

20

Copyright2002-2012DesDevINC.Allrightsreserved.

第六章标签参考

6.1全局标签

arclist文档列表

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2