kingCMS php版网站标签模版制作教程(二),首先说一下php版标签与asp版的区别。
php版的标签 king:模块名称.模型名称 这样构成,以自定义模块的文章模型为例:
{king:portal.article number=’*’ type=’*’ listid=’*’ listid1=’*’ zebra=’*’}
这个标签包含了几个内容标签的通用属性:
number是数量
type是类型
listid是栏目编号
listid1是当前栏目为子栏目时,其所属栏目的编号
zebra是斑马线隔行,整除于指定值的时候输出1,否则输出0
值得注意的是:php版的标签中,属性=之后可以使用单引和双引两种方式,作用在于区分html本身属性中的单引和双引。标签属性使用单引和双引输出的结果是相同的。
另外,标签开始和结束都以大括号来说明,{tags}{/tags},只有在多层嵌套标签时,才会用到小括号(tags),具体方法在下边回复的实际应用标签中,会做说明。
常用标签不完全列举
系统标签:
{config:system.siteurl/}网站地址
{config:system.sitename/}网站标题
{config:system.inst/}cms安装路径
{config:system.info/}系统信息
{config:system.beian/}网站备案号
其他常用标签:
{king:title/}标题
{king:content/}内容
{king:path/}路径
{king:i/}列表自增id,如:第1条…… 第2条…… 第3条……
{king:pagelist/} 列表页或内容页的分页列表,单页面不支持分页
{king:user.state id=”userstat”}……{/king:user.state}用户状态调用,中间的部分动态支持{king:username/}和{king:userid/},不支持更多查询,基于cookie。
1,父级栏目通用列表标签
作用:
多个包含子栏目的父级栏目,可以共同使用的公用列表模板标签。
就算几个子栏目是由不同模型构成的,也没关系,都可以正常输出内容,只是不能输出每个模型的自定义字段,写标签时需要注意。
只支持下一级子栏目,如果子栏目还包含子栏目,又需要嵌套,这里先不列举。
标签代码:
{king:portal.list listid1='(king:listid/)’}
<p><a href=”{king:path/}”>{king:listname/}</a> </p>
{king:portal listid='(king:listid/)’ modelid='(king:modelid/)’ number=’10’}
{king:listid/} <a href=”{king:path/}”>{king:title/}</a><br/>
{/king:portal}
{/king:portal.list}
解释说明:
{king:portal.list listid1='(king:listid/)’} – 得到从属当前栏目的子栏目id
<p><a href=”{king:path/}”>{king:listname/}</a> </p> – 输出栏目名称和路径
{king:portal listid='(king:listid/)’ modelid='(king:modelid/)’ number=’10’} – 嵌套标签:查询栏目id=上级标签得到的id列表,并且模型id也跟刚刚得到的栏目的模型id相同,数量10
{king:listid/} <a href=”{king:path/}”>{king:title/}</a><br/> – 输出listid只是做个比较,无实际意义,后边输出内容的路径和标题。
{/king:portal} – 关闭内部嵌套的标签。
{/king:portal.list} – 关闭外部标签。
php版本中斑马线的标签用法
标签:
{king:portal.article type=’list’ zebra=’5′}
<p class=”bm_{king:zebra/}”><a href=”{king:path/}”>{king:title/}</a></p>
{/king:portal.article}
CSS:
p.bm_1{
margin:0 0 10px 0;
padding:0 0 10px 0;
border-bottom:dashed 1px #CCC;
}
可惜在 king:dbquery 模型中不支持。
KcPHP 获取文章发布时间标签
{king:date formatdate=”Y-m-d”/}
其他格式,参照userguide里的看看吧
help.KingCMS.com
kingcms的dbquery标签可以使用
教程里的 {king:dbquery.select table=”%s__article” sql=”kpath,ktitle” number=”5″ orderby=”kid desc” } <p><a href=”{king:kpath/}”>标题:{king:ktitle/}</a></p> {/king:dbquery.select} |
标签字段值为空能否设个默认值替换
空值代替(none)
当输出的值为空值的时候,则输出none指定的值
下面例子
文章作者
当发现没作者时=未知
{king:_author/} {king:_author none=’未知 ‘ /}
图片文字都是一样道理的
{king:image/}<!– NULL –> {king:image none=’images/none.gif’ /}<!– images/none.gif –>
多看官方帮助文档 你会受益匪浅的
调用站内热门关键字标签
在首页调用使用以下代码,
{king:sql cmd=”select sitekeywords from kingsystem”}(king:#0 url=”/page/article/search.asp?space=0&query=”/){/king}
———————————————————————————————————————
如果想**指数可以,加上size=“数字”标签,
值得注意的是:这里的数字是指英文字节数,2字节=1个汉字,例如:size=”20″,那么页面将显示10个字符。
———————————————————————————————————————
{king:sql cmd=”select sitekeywords from kingsystem”}(king:#0 url=”/page/article/search.asp?space=0&query=” size=”20″/){/king}
标签输出缩略图
{king:portal.list listid1='(king:listid/)’}
<p><a href=”{king:path/}”>{king:listname/}</a></p>
{king:portal listid='(king:listid/)’ modelid='(king:modelid/)’ number=’10’}
{king:listid/}{king:image/}<a href=”{king:path/}”>{king:title/}</a><br/>
{/king:portal}
{/king:portal.list}
当循环标签内有{king:image/}的时候,只调用有图片的内容,除type=”list”情况除外
搜索search.php标签的写法
search.php是搜索页面,搜索是根据不同模型区分的,如:文章模型id=6,则文章搜索的地址是search.php?modelid=6。
直接访问search.php默认的模型是你的模型列表里排序第一的模型,所以如果您希望您某个模型作为search.php默认支持的搜索类型,在后台模型管理,将这个模型排序提到最高即可。
需要注意的是:每次您建立了一个新的模型,这个新模型就会在模型列表里排序最高,所以您需要相应的对排序做出改变。
而且,您建立一个新的模型,并且这个模型加入搜索,就需要在template/inside/search/文件夹里,增加这个模型的搜索内部模板,命名格式如下:
搜索表单页:模型数据表名[home].htm 例如 article[home].htm
搜索结果页:模型数据表名[page].htm 例如 article[page].htm
如果不建立新模型的内部搜索模板,就无法看到搜索表单和搜索结果。
把这个复制到想要放的位置就行了。
<form name=”form1″ method=”get” action=”{config:system.siteurl/}{config:system.inst/}search.php”>
<input name=”query” type=”text” class=”input” style=”vertical-align:middle” /><input type=”hidden” name=”modelid” value=”<?php if(intval(‘{king:modelid/}’)!=0){echo(‘{king:modelid/}’);}else{echo(1);}; ?>” /> <input name=”submit” type=”submit” value=”搜 索” style=”height:27px” /></form></p>
单页面调用标签
{king:portal.list listid=’3′}{king:content size=’320′ fun=’strip_tags’/}{/king:portal.list}
{king:portal.list listid=’3′} 这里指定单页面所在ID
{king:content size=’320′ fun=’strip_tags’/} 这里是调用单页面的内容 fun=’strip_tags’这个函数是过滤内容中的html代码
评论标签的调用
{king:portal.comment modelid=”(king:modelid/)” listid=”(king:listid/)” kid=”(king:kid/)”}
<li>
<p class=”lbms”><b><?php if(‘{king:username/}’!=”){echo(‘村民{king:username/}’);}else{echo(‘软件村网友’);}?></b>(IP:<?php $ip='{king:ip/}’;echo(substr($ip,0,strrpos($ip,’.’)));?>.*)发表的评论</p>
<p class=”lbtxt”>{king:content/}</p>
<p class=”lbxm”>发表时间: {kingATE formatdate=”Y-m-d H:i:s”/}</p>
</li>
{/king:portal.comment}
/feedback/直接这样就行,可是不能自定义字段
0 (0%) 好评 | 0 (0%) 中评 | 0 (0%) 差评 |