标签是一个可循环处理的数据获取和输出工具,可根据设定的条件从数据库、外部数据源获取数据,并根据你设定的标签模板输出结果。
注1:标签的所有参数都必须以半角(英文)双引号括起来 ,如:{content catid=”1”}{/content}。使用单引号或不使用引号的方法是错误的。
注2:自闭和的标签,变量可以在标签结束后被引用 ,如:
<li>
<!--{content_prev contentid="$r[contentid]" return="s"/}-->
<li>{$s[title]} </li>
</li>
注3:return 是所有标签的可选参数,表示数据返回的数组名称,默认等于 r,可以根据所需修改,例:
<ul>
<!--{content catid=”1” size=”10” return=”list”}-->
<li><a href="{$list[url]}">{$list[title]}</a></li>
<!--{/content}-->
</ul>
注4:比如我们需要调用访问量最高的 10 条内容,并以列表的方式输出出来,可以这么写:
<ul>
<!--{content size="2" orderby="pv DESC, published DESC"}-->
<li>
<a href="{$r[url]}" title="{$r[title]}" {if $r[color]} style="color:{$r[color]};"{/if} target="_blank">
{str_cut($r[title],40,'')}
</a>
</li>
<!--{/content}-->
</ul>
上述代码是最简单的 {content} 标签调用的例子。
注5:举个复杂的例子,比如我们要求:
只有当标题显示不完整时才添加 title 属性(更人性化,且节省流量)
显示内容所在的栏目
<ul>
<!--{content size="10" orderby="pv desc,published desc"}-->
<li>
<span class="brush:cat">
<a href="{table('category',$r[catid],'url')}" target="_blank">{table('category',$r[catid],'name')}</a>
</span>
<?php $_title=str_cut($r[title], 40, '');?>
<a href="{$r[url]}" {if $_title!=$r[title]} title="{$r[title]}" {/if} {if $r[color]} style="color:{$r[color]};" {/if} target="_blank">{$_title}</a>
</li>
<!--{/content}-->
</ul>
这里的例子可能比常见的复杂一些,解释一下:
我们使用了{content}标签来调用内容,限制了size="10"为 10 条,并以 pv 访问量降序,published 发布时间降序排列。
在 {content} 内部,我们就可以处理如何显示这10 条内容。
我们通过 {table($tablename,$id,$field)}这种方式获取当前内容所在的栏目并显示为链接。
接着,我们对标题做了一次 str_cut 裁剪,为了达到标题显示不完整时才出现 title 标题的目的,我们暂存了标题到 $_title 变量上。
接着我们判断,如果裁剪过的标题不等于原标题,那么就为 a 标签添加 title 属性。
由于在后台可以设置内容的标题颜色,我们又处理了标题颜色。
这就是一个复杂点的 {content} 范例。
接下来,对常用的内置标签做详细说明: