1、增加模板时list.var模板需要勾选“使用程序代码”选项。如图:
2、直接添加PHP代码,不需要加程序开始和结束标记。
3、字段值数组变量为$r,对应的字段变量为$r[字段名],如:标题字段变量就是$r[title]。另外编号变量为$no
4、将最终模板内容赋给$listtemp变量。
list.var模板范例:
例子1:如果信息没有设置标题图片就显示指定的图片。
<span>1</span> <span>if(empty($r[titlepic])) </span><span>2</span> <span>{ </span><span>3</span> <span> $r[titlepic]='/images/img.gif'; </span><span>4</span> <span>} </span><span>5</span> $listtemp='<span><</span><span>li</span><span>><</span><span>a </span><span>href</span><span>="[!--titleurl--]"</span><span>><</span><span>img </span><span>src</span><span>="[!--titlepic--]"</span><span>></</span><span>a</span><span>></</span><span>li</span><span>></span>';
说明:$r[titlepic]为标题图片字段变量。$listtemp为模板内容变量。
例子2:如果信息是今天发布的就显示“NEW”图片标识。
<span>1</span> <span>$newimg=''; </span><span>2</span> if(time()-$r[newstime]<span><</span><span>=1</span><span>*24*3600) </span><span>3</span> <span>{ </span><span>4</span> <span> $newimg</span><span>='<img </span alt="帝国CMS 列表模板list.var支持程序代码,cmslist.var_PHP教程" ><span>src</span><span>="NEW图片地址"</span><span> border</span><span>="0"</span><span>></span><span>'; </span><span>5</span> <span>} </span><span>6</span> $listtemp='<span><</span><span>li</span><span>><</span><span>a </span><span>href</span><span>="[!--titleurl--]"</span><span>></span>[!--title--]<span></</span><span>a</span><span>></span> '.$newimg.'<span></</span><span>li</span><span>></span>';
说明:$r[newstime]为发布时间字段变量。$listtemp为模板内容变量。
例子3:调用投稿用户的公司名称。
<span>1</span> <span>$userr=$empire->fetch1("select company from {$dbtbpre}enewsmemberadd where userid='$r[userid]' limit 1"); </span><span>2</span> $listtemp='<span><</span><span>li</span><span>><</span><span>a </span><span>href</span><span>="[!--titleurl--]"</span><span>></span>[!--title--]<span></</span><span>a</span><span>></span> <span><</span><span>span</span><span>></span>公司名称:'.$userr[company].'<span></</span><span>span</span><span>></</span><span>li</span><span>></span>';
说明:$r[userid]为发布者用户ID字段变量。$listtemp为模板内容变量。
其他说明:
如果$listtemp引用模板内容是用单引号,那么里面使用单引号前面要加\,例如:$listtemp='\'[!--titlepic--]\'>';
相反如果引用模板内容是用双引号,那么里面使用双引号前面也要加\,例如:$listtemp="\"[!--titlepic--]\">";
支持程序代码可以实现很多非常复杂的应用需求。