代码改变世界

cms系统也不复杂

2008-08-22 11:23  snryang  阅读(1817)  评论(8编辑  收藏  举报

      最近公司接了一个政府网站来做,要求全静态页面展示,记得以前在学校时用过渐飞cms系统来做学校网站,对cms还算比较了解,开始觉得定义那么多标签比较难实现,现在做出来了,倒觉得cms系统也挺简单的。在开发过程中,参考了渐飞的系统模板和处理的一些方法,主要对正则表达式下了一番功夫。系统数据库不是我设计的,所以定义的标签还依赖于这个系统,也存在不合理的标签。下面将定义的一些标签及主要的标签替换类贴出来。

   

新闻内容标签

标签

说明

[DH:Click]

点击次数

[DH:Year]

[DH:Month]

[DH:Day]

[DH:Hour]

[DH:Minute]

[DH:Second]

[DH:Title]

标题

[DH:Content]

内容

[DH:Source]

来源

[DH:Author]

作者

[DH:Editer]

责任编辑

[DH:ColumnName]

所属栏目名称

[DH:PicturePath]

新闻图片路径

[DH:Description]

文章描述

[DH:LinkURL]

链接地址

[DH:KeyWord]

新闻关键字

[DH:PrevNews]

显示上一条新闻路径 未做

[DH:PrevTitle]

显示上一条新闻标题 未做

[DH:NextNews]

显示下一条新闻路径 未做

[DH:NextTitle]

显示下一条新闻标题 未做

 

 

栏目循环标签

标签

说明

[DH:Loop NewsCount=number TitleNum=type AddStr=”…” CategoryID=number NewsType =Title Order=desc Sort=Click]    开始循环

[DH:Loop]

开始循环

NewsCount=number

新闻调用数量,number为任意有效英文数字

TitleNum=number

指定新闻标题的显示字符数量,number可以是任意有效的数值

AddStr=word

标题字数被截取之后,是否加上"..."类似这样的点。word任意字符(注意:请不要使用引号)

CategoryID

CategoryID=id

调用指定ID栏目的新闻

 

不指定参数默认调用本栏目新闻,如在首页模板,则默认调用所有栏目新闻

CategoryID=ID1|ID2|ID3

调用指定多个ID栏目的新闻,ID为有效整数,ID间用“|”分隔

 

CategoryID=All

调用网站所有栏目新闻

 

 

NewsType

Title          调用标题新闻

Recommend      调用推荐新闻

FlashPict      调用首页Flash新闻轮播图片文章

Order = desc|asc

排序 降序还是升序任选一个 不指定默认为降序(desc)

Sort= DateTime|Click

排序方式 按发布日期,点击次数任选一个 不指定默认为发布日期(DateTime)

[/DH:Loop]

结束循环

 

 

Loop 改为 LoopPage 则表示分页循环(一个页面里只允许一个DH:LoopPage) 继承Loop所有属性 ,这个标签没有CategoryID属性 只允许在分页模板中使用

 

 

分页标签

标签

说明

[DH:PageSize]

每页记录数

[DH:PageCount]

总页数

[DH:RecordCount]

总记录数

[DH:CurrentPage]

当前页码

[DH:FirstPage]

首页

[DH:PrevPage]

上一页

[DH:ListPage]

页码列表 未做

[DH:NextPage]

下一页

[DH:LastPage]

尾页

[DH:DropDownList]

页码下拉框

 

 

公共标签

[DH:Navigation]

导航标签:显示的效果为

地区概况>>>自然地理

[DH:UrlPath]

URL路径   作废

[DH:More ColumnID=1]

栏目链接标签 ColumnID为栏目ID

[DH:ImgPath Type=1]

图片的路径

[DH:ImgURL Type=1]

图片的链接地址

[DH:SQL SELECT= Multiple=1 Str=</tr><tr> ]

执行SQL开始 SELECT为要执行的SQL查询语句 语句中不能出现引号

Multiple与Str

表示循环到Multiple指字数字的倍数时加上Str指定的字符,用于多列排板.

[DH:Field Name=Id WordNum=100|All HTML=True|False ]

显示的字段ID

WordNum

要显示的字符数

HTML

是否取消HTML

[/DH:SQL]

执行SQL结束 循环次数为SQL取得的记录数

 

 

Code