phpcms v9模板标签使用说明

来源:互联网 发布:无烟艾灸仪 知乎 编辑:程序博客网 时间:2024/04/27 18:33

在PHPCMS V9中正式开始需要PC标签做为数据的获取的方式。

PC标签是以下面的方式进行声明

{pc:content action="lists" cache="3600" num="20" page="$page"}{/pc}

PC标签必须以{pc}开头,并以{/pc}结尾的代码片段。

当然不以{/pc}结尾并不会引起程序致命性的错误,导致程序无法继续运行。

以下为两种已知可能会出现的问题:

当网页中出现两个PC标签时,可能会使得没有闭合的PC标签之后的PC标签数据和其混乱。在后台可视化编辑时,可能出现网页结构错乱的问题。

PC标签分析:

PC标签中{pc:}冒号之后跟随的为模块名。如上面的例子中调用的是内容模型的PC标签。

action=”list”

这个形式所代表的是参数。每一个PHPCMS V9模型都为其PC标签定义了调用的参数。其中有一些调用参数是系统保留的参数,其对所有的PC标签都是有效的。

参数必须使用

参数名=”参数值”

的方式填写,多个参数之间使用空格分开(如下例),参数值可使用双引号来包括,无论是什么形式的引号都必须是成对出现的。

{pc:content 参数名=”参数值” 参数名=”参数值” 参数名=”参数值”}

请查看PC标签保留参数相关章节,以了解具体保留参数及其用途。

PC标签分类:

PC标签包含两个类别,分别为:

工具类模块类

工具类,大体上可以理解为PHPCMS V9所提供的一些工具箱。请查看PC标签工具箱相关章节,以了解更多关于工具类的PC标签的更多信息。

而模块 类,是PHPCMS V9各个模型提供给大家调用模块 数据的数据接口。查看具体模块的相关说明章节,以了解更多关于模块类的PC标签的更多信息。

如何显示PC标签中的数据:

默认情况下PC标签中的数据都是数组方式返回的,你都可以通过 $data 来获取到这个数组,如果你在PC标签中定义了return参数,返回的数组将使用return的值进行命令。

一般情况下你可以使用如下的方式来显示值:

{loop $data $key $val}

<a href=”{$val[url]}”>{$val[title]}</a><br>

{/loop}

基中的$val[url]和$val[title]需要具体根据所使用的PC标签,返回的数据来判断。

PC标签保留参数

下表为PC标签保留参数表,几乎所有的PC标签都支持这些保留参数设置

变量名

默认值

说明

action

null

本参数的值表示为操作事件,模型类PC标签必须使用包含本参数,以说明要进行的操作。

cache

0

缓存存储时间(单位秒)

num

20

获取记录的条数,最后会被模板引擎处理成limit传送到处理函数中。

page

null

当前分页。一般填写为$_GET[page]

urlrule

null

URL规则

return

data

返回数据变量名

下例中是一个完整的使用例子。

{pc:content action=”lists” catid=”25″ num=”20″ page=”$_GET[page]” return=”data”}

<ul>

{loop $data $n $r}

<li><a href=”{$r[url]}”>{$r[title]}</a></li>

{/loop}

</ul>

{/pc}

get标签

GET标签源自于PHPCMS 2008版,其使用SQL语句直接获取数据的特性,成为大家制作模板的首选。

在V9中这样强大的工具也得到保留下来。

GET标签使用方式如下:

{pc:get sql=”SELECT * FROM phpcms_member” cache=”3600″ page=”$page” dbsource=”discuz” return=”data”}

<ul>

{loop $data $key $val}

{$val[username]}<br />

{/loop}

</ul>

{$pages}

{/pc}

从上面的代码里面可以看出GET标签所支持的参数。对照下面的列表了解每一个参数的用途:

参数

默认值

必须

说明

sql

null

要执行的SQL语句

cache

0

缓存时间,单位为秒

page

0

分页,通过变量把当前的分布传给PC标签进行处理

dbsource

null

数据源,当你通过系统后台的数据源模块配置过数据源时,可把数据源名填写到这里,系统会去对应的数据源来读取数据。如果要读取本系统的数据请留空

return

data

返回的数据的变量

内容模块

内容模块PC标签调用说明

模块名:content

模块提供的可用操作

操作名

说明

lists

内容数据列表

relation

内容相关文章

hits

内容数据点击排行榜

category

内容栏目列表

position

内容推荐位列表

position操作说明如下:

内容推荐位列表(position):

可用参数:

参数名

是否必须

默认值

说明

posid

null

推荐位ID

catid

null

调用栏目ID

thumb

0

是否仅必须缩略图

order

null

排序类型

num

null

数据调用数量

代码例子:

{pc:content action=”position” posid=”2″ order=”listorder DESC” num=”4″}

<ul>

{loop $data $key $val}

<li> <a href=”{$val['url']}”>{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

 

根据模型所设置的加入到推荐位中字段名称

内容列表(lists):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

where

null

sql语句的where部分

thumb

0

是否仅必须缩略图

order

null

排序类型

num

null

数据调用数量

moreinfo

0

是否调用副表数据

提醒:从PHPCMS V9 Beta 20101105版本开始支持moreinfo参数属性,本参数表示在返回数据的时候,会把副表中的数据也一起返回。一个内容模型分为2个表,一个主表一个副表,主表中一般是保存了标题、所属栏目等等短小的数据(方便用于索引),而副表则保存了大字段的数据,如内容等数据。在模型管理中新建字段的时候,是允许你选择存入到主表还是副表的(我们推荐的是,把不重要的信息放到副表中)。想要在列表中调取副表的数据就需要在PC标签中使用moreinfo这个属性。

代码例子:

{pc:content action=”lists” catid=”2″ order=”id DESC” num=”4″}

<ul>

{loop $data $key $val}

<li> <a href=”{$val['url']}”>{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

where用法:

{pc:content action=”lists” catid=”2″ where=”`thumb`!=” AND `status`=99″ order=”id DESC” num=”4″}

<ul>

{loop $data $key $val}

<li> <a href=”{$val['url']}”>{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

 

其他模型字段

点击排行榜(hits):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

day

0

调用多少天内的排行

order

null

排序类型(本月排行- monthviews DESC 、本周排行 – weekviews DESC、今日排行 – dayviews DESC)

num

null

数据调用数量

代码例子:

{pc:content action=”hits” catid=”2″ order=”weekviews DESC” num=”10″}

<ul>

{loop $data $key $val}

<li> <a href=”{$val['url']}”>{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

 

其他模型字段

相关文章(relation):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

relation

$relation

无需更改

keywords

null

内容页面取值:$rs[keywords]

num

null

数据调用数量

代码例子:

{pc:content action=”relation” relation=”$relation” catid=”$catid” num=”5″ keywords=”$rs[keywords]“}
{loop $data $r}
<li>·<a href=”{$r[url]}” target=”_blank”>{$r[title]}</a><span>({date(‘Y-m-d’,$r[inputtime])})</span></li>
{/loop}
{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

 

其他模型字段

栏目列表(category):

可用参数:

参数名

是否必须

默认值

说明

catid

0

调用该栏目下的所有栏目 ,默认0,调用一级栏目

$siteid

1

默认调用系统站点

order

null

排序方式、一般按照listorder ASC排序,即栏目的添加顺序

代码例子:

{pc:content action=”category” catid=”0″ num=”25″ siteid=”$siteid” order=”listorder ASC”}

{loop $data $r}
<li><a href=”{$r[url]}”><span>{$r[catname]}</span></a></li> {/loop}

{/pc}

返回参数如下表:

字段

类型

默认值

说明

catid

smallint

栏目ID

siteid

tinyint(3)

0

站点ID

module

varchar(15)

模块ID

type

tinyint(1)

1

栏目类型ID

modelid

tinyint(5)

5

模型ID

parentid

smallint(5)

5

上级父栏目

arrparentid

varchar(255)

所有父栏目

child

tinyint(1)

0

子栏目

arrchildid

mediumtext

所有子栏目

catname

varchar(30)

栏目名称

image

varchar(100)

栏目图片

description

mediumtext

栏目描述

parentdir

varchar(100)

父栏目目录

catdir

varchar(30)

栏目目录

url

varchar(100)

栏目链接

items

mediumint(8)

0

栏目内容数

hits

int(10)

0

点击数

setting

mediumtext

栏目设置

listorder

smallint(5)

0

排序

ismenu

tinyint(1)

0

是否显示

sethtml

tinyint(1)

0

是否生成到根目录

letter

varchar(30)

栏目拼音

0 0
原创粉丝点击