摘 要
PHPcm s是中国领先的网站内容管理系统 同时也是一个开源的P HP开发框 架。 Phpcm s由内容模型、会员、 问吧、专题、财务、订单、广告、邮件订阅、 短消息、 自定义表单、全站搜索等 20多个功 能模块组成 内置新闻、 图片、下载、信息、产品5大内 容模型。 Phpcm s采用模块化开发支持自定义内容模型和会员模型并且可以自 定义字段。
PHPCM S 的技术优势主要体现在系统的稳定性、扩展性、安全性、全面性在负载能力和发布效率上具有突出 的优势。PHPCM S的会员系 统非常强大特别适合大型门户、行业网站的运营。
PHPCM S采用国内 领先模板技术全站采用D IV+css设计
。使用者可以通过修改模板结合二次开发做出适合自己需求的网 站。
关键词: PHPCM S PHPCM S模板制作 PHPCM S二次开次 GET语法
使用
目 录
第一章 前言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
第二章 PHPCM S模板结构 及其位臵. . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
第三章 PHPCM S模板制作 及相关知识
. . . . . . . . . . . . . . . . . . . . . . . . . . .3
3. 1 PHPCM S的模板机
制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
3. 2 PHPCM S模板常用 变量含
义. . . . . . . . . . . . . . . . . . . . . . . . .4
3. 3 phpcm s模板语法 规
则. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
3. 4 PHPCM S get语法 规
则. . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
3. 5模板解析、制作思路及 一些常用的 例
子. . . . . . . . . . . . . .8
第四章 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
第五章 参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
一、前言
所谓PHP CMS 网站 模板就是生成网 页的“模子” 主要包括固 定的图片、表格、颜色等美术 风格 以及要从数 据库输出的 数据标签还有简单的 phpcm s定义的语 法也可以是很 复杂的ph p语法 。 PHPCM
S 每个网站 的每个栏目 都可以设臵 不同的模板 最终栏目的 网页都是一 个“模子”里出来的应此这个栏 目的网页外 观、风格是一致
的。
PHPCM S 的模板按 照模块功能 分别放在这 些模块名字 命名的目录 下面 而其中最重 要的内容栏 目模板如新闻、产品、信息、 图片、下载、视频以及首 页的模板则 放到php cms 目录 下面。phpcm s 目录 heade r.html foote r.html是 网站所有网 页的页头和 页尾模板 index .html则 是网站首页 模板。文件cat egory
.html和 l ist.html是新闻模型 的栏目首页 和栏目列表 页 由于phpcms 认为 新闻模型是 最重要的吧 因此新闻模 型的模板默 认不要带后 缀其他模型的 栏目首页和 列表页则要 带上后缀 如 category-info.html l ist-info.html 这是信息栏 目模型的栏 目首页、栏目列表页 其他类似。 至于一些扩 充模型如黄页等其模板则在 \yp\目录下面。
模板生成网 页的过程。 phpcm s 的网页允 许生成静态 网页和动态网页不管是静态 还是动态风格都由模 板限定。首先 网站管理员 要把相应模 型的模板放 到模板目录 下面并在管理后 台设定模板 方案确定后 phpcm s将把模板 编译为相应 的php文 件保存到\data\cache
_temp late下 面。编译过程实 际上就几条 语句把模板中的 phpcms语句转换 为php语 句把数据标签 翻译为sq l数据库操 作语句这就成了标 准的 php 文件服务器可以 直接执行了 。对于动态网 页来说工作已经完 成了。静态网页则 还要做一次 “臵换” 执行php 模板文件按照php 语法执行s ql语句把sql语 句输出的结 果再和模板
结构部门组 合成网页文 件html 并写到服务 器空间里面 。
这就是pg pcms系 统的模板机 制灵活运用这 个机制可以设定不
同子栏目灵 活多变的模 板。 phper 也要注意的 是直接改\data\cache
_temp late\下面的ph p模板文件 是没用的 必须改\templ ates\下面的静态 模板。
二、 PHPCM S模板结构 及其位置
首先从官网把phpc ms200 8最新版本 下载下来并安装好。安装好之后在网站管理 后台里的“网站配臵” -- “基本信息” -- “生成文件扩 展名”那设臵生成 html扩展名然后更新首 页和缓存。 网站程序就 会自动生成 HTML页 面。打开网站下 的. /templ ates/defau lt/phpcm s/ 目录就可以 看到。 templ ates/defau lt/是官方默认 模板风格目 录。我截图给大 家看
大家也可以登录网站后台管理-在“模板风格” -- “管理模板”菜单里找到这些模板名称。如下图
完整的首页模板就是由里面的he ader.Html 头部、 index.Html 首页、 foote r.Html 尾部 三个模板文件组成的如果想修改首页就是修改这几个模板。下面我把常用的模板名称列出来让大家了解。
模板目录里以cate gory开头的都是栏目页
如c ateg ory.html 文章栏目页c ateg ory_d own.html 下载栏目页categ ory_i nfo.html 信息栏目页c ateg ory_p ictur e.html 图片信息页categ ory_p roduc t.html 产品栏目页c ateg ory_v ideo.html 视频栏目页
以lis t开头的都是列表页
如l is t.html 文章列表页l is t_down.htm l 下载列表页list_pictu re.html 图片列表页list_produ ct.html 产品列表页lis t_video.html 视频列表页
以show开头的都是内容页
如s how.html 文章内容页show_down.html 下载内容页show_info.html 信息内容页show_pictu re.html 图片内容页show_produ ct.html 产品内容页show_video.html 视频内容页
上面就是P HPCMS的基本模板名称如果你想要制作或修改模板只要找到相应的模板修改就行了。其它以TAG开头的模板都一些标签模板在后面我再为大家详细解释。官方PHP CM默认的每个频道基本是由栏目页、列表页、内容页 这三个页面组成头部和尾部都是通用的。所以我们做模板或是仿模板的时候一般都是按
1、 网站首页
2、文章—文章栏目页—文章列表页—文章内容页
3、 图片—图片栏目页—图片列表页—图片内容页
4、下载频道同上
5、信息频道同上
6、其他单一页面
这个顺序来做。
三、 PHPCM S模板制作
3. 1 PHPCM S的模板机 制
所谓网站模板就是生成网页的“模子” 主要包括固定的图片、表格、颜色等美术风格 以及要从数据库输出的数据标签还有简单的phpcm s定义的语法也可以是很复杂的ph p语法。PHPCM S每个网站的每个栏目都可以设置不同的模板最终栏目的网页都是一个“模子”里出来的应此这个栏目的网页外观、风格是一致的。
PHPCM S的模板按照模块功能分别放在这些模块名字命名的目录下面而其中最重要的内容栏目模板如新闻、产品、信息、 图片、下载、视频以及首页的模板则放到phpcms目录下面。phpcm s目录heade r.html foote r.html是网站所有网页的页头和页尾模板 index.html则是网站首页模板。文件c at egory.html和lis t.html是新闻模型的栏目首页和栏目列表页由于php cms认为新闻模型是最重要的吧 因此新闻模型的模板默认不要带后缀其他模型的栏目首页和列表页则要带上后缀如c ate gory-info.html list-info.html这是信息栏目模型的栏目首页、栏目列表页其他类似。至于一些扩充模型如黄页等其模板则在\yp\目录下面。
下面说说模板生成网页的过程。phpcm s的网页允许生成静态网页和动态网页不管是静态还是动态风格都由模板限定。首先 网站管理员要把相应模型的模板放到模板目录下面并在管理后台设定模板 方案确定后 phpcm s将把模板编译为相应的php文件保存到\data\c ache_temp late下面。编译过程实际上就几条语句把模板中的phpcm s语句转换为php语句把数据标签翻译为sql数据库操作语句这就成了标准的php文件服务器可以直接执行了。对于动态网页来说工作已经完成了。静态网页则还要做一次 “置换”执行p hp模板文件按照p hp语法执行s ql语句把sql语句输出的结果再和模板结构部门组合成网页文件html 并写到服务器空间里面。
这就是pg pcms系统的模板机制灵活运用这个机制可以设定不同子栏目灵活多变的模板。phper也要注意的是直接改\data\c ache_temp late\下面的ph p模板文件是没用的必须改\templ ates\下面的静态模板。
3.2 PHPCM S模板常用 变量含义
{$head[title]}页面标题用法 <title>{$head[title ]}-{$PHPCM S[siten ame]}</title>{$PHPCM S[siten ame]}网站名称用法 <title>{$head[title ]}-{$PHPCM S[siten ame]}</title>{$head[keyw o rds]}关键字用法 <metan ame="keyw o rds"c onte nt="{$head[keyw o rds]}">{$head[descr iptio n]}网页描用法:<metan ame="descr iptio n"conte nt="{$head[descr iptio n]}">{$PHPCM S[versi on]}phpcm s版本用法:<metan ame="gener ator"conte nt="Phpcm s[versi on]}">{$PHPCM S[versi on]}">PHPCM S_PAT H}指向网站根目录用法 <scrip tlang uage="javas cript"src="{PHPCM S_PAT H}inclu de/js/commo n.js"></scrip t>
{$MODUL E[ads][linku rl]}广告模块域名路径用法 <SCRIP TLANG UAGE="JavaS cript"src="{$MODUL E[ads][linku rl]}ad.php?id=1"></SCRIP T>
{$MODUL E[vote][linku rl]}投票模块域名路径与上面面是相同的这样可以将模块绑定不同的域名而路径不会有错误。
{$skind ir}指向模版风格文件夹/templ ates/defau lt/skins /defau lt用法<linkh ref="{$skind ir}/style.css"rel="style sheet "type="text/css">
{$PHP_S ITEUR L}网站的域名地址用法: 【<ahref="#"onCli ck="windo w.exter nal.addFa vorite('{$PHP_S ITEUR L}','{$PHPCM S['siten ame']}')">加入收藏</a>】
3.3 phpcm s模板语法 规则
1、变量表示
{$name}被解析成<?=$name?>表示显示变量$name的值其中的“name”由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。
2、常量表示
{name}被解析成<?=name?>表示显示常量name的值其中的“name”由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。
3、条件判断
{if*}*{els e}*{els e}*{/if}或者{if*}*{/if} 其中{if*}中的*就是此判断语句的条件表达式符合p hp的表达式。
{if$us eri d}{$us ern ame} {els e} {$nonam e}{/if}
4、循环
{loop$a$b}*{/loop}
或者
{loop$a$b$c}*{/loop} {loop$a$b}*{/loop}
被解析成<?if(is_ar ray($a))forea ch($aAS$b){?>*<?}?>
而
{loop$a$b$c}*{/loop}则被解析成<?if(is_ar ray($a))forea ch($aAS$b=>$c){?>*<?}?>
5.模板包含
{templ ate'modul ename','filen ame'}
例如:{templ ate'phpcm s','heade r'}表示包含模板目录,phpcm s目录下h eader.html文件建议if和loop语法应该写在html注释符之间这样可以避免在编辑工具中难看
例如
这样写if
<!--{if$a>$b}--><!--{els e}--><!--{/if}-->
这样写loop
<!--{loop$arr$key$val}--><!--{/loop}-->
如果不习惯这套语法也可以直接在模板中书写php代码例如<?phpec ho'Hello World!';?>
3.4 PHPCM S get语法 规则
Phpcm s2008 同时支持中文标签和get代码标签从而大大的增加了模板制作的速度和效率。 中文标签适合美工使用代码标签适合懂点SQL语句的人使用;需要我们去认真挖掘 Phpcm s2008不仅强大而且易用下面将会对Phpcm s的个性化利器---万能GET标签进行详细的讲解。
GET标签让Phpc ms具备了超强的数据整合能力。 Phpcm s2008 的get标签不仅能调用
Phpcm s系统的数据 同时也可以调用任何其他Mysq l数据库数据并支持分页功能。Phpcm s2008在新建模板和修改模板页面增加了 get标签生成器 get标签生成器可以帮助您列出指定数据源的数据表和字段通过填空和选择方式生成可用的 get标签代码。Phpcm s2008 首次提供了最全面的数据字段对本系统任何数据表和字段都提供了中文说明这也会大大降低get标签的使用难度。
如果说我不懂SQ L怎么办没有问题get标签还有强大的创建工具Phpcm s2008在新建模板和修改模板页面增加了 get标签傻瓜式生成器get标签生成器可以帮助您列出指定数据源的数据表和字段通过填空和选择方式生成可用的get标签代码。Phpcm s2008首次提供了最全面的数据字段对本系统任何数据表和字段都提供了中文说明 这也会大大降低get标签的使用难度。
一、 get标签样式以及语法
get标签样式
{get dbsou rce=" " sql=" "} {/get}
{get dbsou rce=" " sql=" " /}get标签语法
1.get标签属性值必须用双引号括起来( " " )。
如 {get sql=" " /}
2.get标签必须含有结束标记即正确ge t标签必须是成对出现整个Get标签含有结束标记“ {/get}”或者是“/”。 (可以参考上面提到的 “二、 get标签样式” )
例如 {get sql=" " } {/get}
3.get标签里面含有的变量数组和函数必须用“{}”包括。
例如 {str_c ut($r[title],50)}
{$r[ur l]}
4.get标签sql语句中条数限制。 (rows=" " )
例如显示10条信息
{get sql=" "rows="10"}
{/get}
5.g et标签sql语句中条件限制。 (wher e )
例如调用栏目ID为1的信息
{get sql="selec t*from phpcm s_con tent where catid=1"}
标题 {$r[t it le ]}URL {$r[ur l]}
{/get}
二、 get标签参数完整剖析get dbsou rce="数据源"dbnam e="数据库" sql="SQL语句"rows="行数"retur n="返回变量名称"page="$p age"}
输出代码(含返回变量值、数组、函数等)
{/get}
例1调用本系统单条数据示例调用ID为1的信息标题长度不超过25个汉字显示更新日期
{get sql="selec t*from phpcm s_con tent where conte ntid=1" /}
标题 {str_c ut($r[title],50)}URL {$r[url]}更新日期 {date('Y-m-d', $r[updat etime])}{/get}
例2调用本系统多条数据示例调用栏目 ID为1通过审核的10条信息标题长度不超过25个汉字显示更新日期
{get sql="selec t*from phpcm s_con tent where catid=1 and statu s=99 order by updat etime desc"rows="10"}
标题 {str_c ut($r[title],50)}URL {$r[url]}更新日期 {date('Y-m-d', $r[updat etime])}{/get}
三、 get标签的认识及在模板中如何使用
<ol>
{get sql="SELEC T*FROM`phpcm s_con tent` c,`phpcm s_content_count `n WHERE updat etime>'.TIME. '-7*86400 and c.conte ntid=n.conte ntid AND c.`statu s`=99 and catid='$catid' '.get_s ql_ca
Hostodo又发布了几款针对7月4日美国独立日的优惠套餐(Independence Day Super Sale),均为年付,基于KVM架构,采用NVMe硬盘,最低13.99美元起,可选拉斯维加斯或者迈阿密机房。这是一家成立于2014年的国外VPS主机商,主打低价VPS套餐且年付为主,基于OpenVZ和KVM架构,产品性能一般,支持使用PayPal或者支付宝等付款方式。商家客服响应也比较一般,推...
趣米云怎么样?趣米云是创建于2021年的国人IDC商家,虽然刚刚成立,但站长早期为3家IDC提供技术服务,已从业2年之久,目前主要从事出售香港vps、香港独立服务器、香港站群服务器等,目前在售VPS线路有三网CN2、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。由于内存资源大部分已售,而IP大量闲置,因此我们本月新增1c1g优惠套餐。点击进入:趣米云官方网站地址香港三网CN2云服务器机型活...
欧路云 主要运行弹性云服务器,可自由定制配置,可选加拿大的480G超高防系列,也可以选择美国(200G高防)系列,也有速度直逼内地的香港CN2系列。所有配置都可以在下单的时候自行根据项目 需求来定制自由升级降级 (降级按天数配置费用 退款回预存款)。由专业人员提供一系列的技术支持!官方网站:https://www.oulucloud.com/云服务器(主机测评专属优惠)全场8折 优惠码:zhuji...