模板内通过A函数可以很方便的调用栏目的文章,配合loop循环语法,输出文章列表.
调用当前栏目的文章
{loop a() as $article}
文章标题:{$article.title} 文章网址:{$article.link} 文章栏目id:{$article.cid}{br}
{/loop}
带参数调用
{//调用栏目ID=66618103中的5篇文章}
{loop a('cid',66618103,'pagesize',5) as $article}
文章标题:{$article.title} 文章网址:{$article.link} 文章栏目id:{$article.cid}
{/loop}
{//调用link模型下,字段enabled=1的所有文章}
{loop a('modulehash','link','where.enabled',1,'pagesize',0) as $thislink}
<a href="{$thislink.link}" target="_blank">{$thislink.title}</a>
{/loop}
带数组参数调用
复杂的查询推荐使用此方法,注意数组变量名不要与其他文章查询重复,或者在查询前,初始化数组 {$test=array()}
{//调用栏目ID=66618103中的5篇文章}
{$test.cid=66618103}
{$test.pagesize=5}
{$articles=a($test)}
{//将返回的文章数组赋值给变量$articles}
{loop $articles as $article}
文章标题:{$article.title}
{print_r($article)} {//通过print_r函数可以将当前文章所有字段显示在网页上,方便查看与调试}
{/loop}
查询到的文章数量:{count($articles)}
常用参数
cid:目标栏目的id,只调用该栏目下的文章,如id不为数字,则调用此栏目名下的文章,如果不附带此参数,则cid为当前栏目的id.
cids:多个目标栏目的id,只调用这些栏目下的文章,这些栏目必须是同一个模型的下属栏目,使用英文’;’号分隔,如: 1;2;3
modulehash:调用目标模型标识下的文章.
enabled:是否包含已禁用栏目的文章(只对填写了cids或modulehash参数有效),默认为1,=1时不显示已禁用的栏目的文章,=0时显示.
all:下属栏目的文章,默认为0,=0时只获取本栏目文章,=1时获取自身与下属栏目的文章,=2时只获取下属栏目的文章.
order:文章排序,默认为id desc,如当前栏目拥有变量order,则order为当前栏目变量的order值.order=rand时,文章随机排序.
pagesize:文章数量,默认为10,如果pagesize=0则调用所有文章,如当前栏目拥有变量pagesize,则pagesize为当前栏目变量的pagesize值.
start:文章查询起始行数.
column:仅查询指定字段如:id,title 默认为*,查询所有.注:也会一并查询文章页页面网址中包含的字段
sql:手动附带sql语法,如:id=’1′.
fullurl:返回完整的文章网址.
where:文章的查询条件,详情.
不同页面的文章地址
通过后台模型可以增加多个文章页面,在a函数里面加route参数就可以让文章网址根据route参数生成对应的网址(默认的route为article).
如后台增加了页面标识为 article2 网址为 /($.id)/($id)/2/
{$test.route=article2}
{$articles=a($test)}
{loop $articles as $article}
{$article.link} {//文章网址为/栏目id/文章id/2/}
{/loop}
也可以通过U函数动态生成对应文章的网址.
{$test.cid=66618103}
{$articles=a($test)}
{loop $articles as $article}
{U(66618103,article2,$article)} {//66618103为栏目id,article2为页面标识,$article为文章数组}
{/loop}
暂无评论内容