帝国cms 列表内容模板(list.var) $listtemp=' 用法
帝国所有模板均可使用php代码对字段内容进行灵活处理,唯独列表模板list.var不支持使用程序代码,但是它支持$listtemp变量。
为了使帝国模板制作更加完美、满足各种需求,帝国新增了list.var支持程序代码功能,列表模板、标签模板(ecmsinfo标签调用)与搜索模板list.var均可使用php代码对字段内容进行验证或任意处理再输出,使信息列表显示效果更加强大灵活。
实现要点:
1、增加模板时list.var模板需要勾选“使用程序代码”选项。
2、直接添加PHP代码,不需要加 程序开始和结束标记。
3、字段值数组变量为$r,对应的字段变量为$r[字段名],如:标题字段变量就是$r[title]。另外编号变量为$no
4、将最终模板内容赋给$listtemp变量即可。
list.var模板范例:
例子1:如果信息没有设置标题图片就显示指定的图片。
1 2 3 4 5 6 7 8 |
if ( empty ( $r [titlepic]))
{
$r [titlepic]= '/images/img.gif' ;
}
$listtemp ='
帝国CMS让模板list. var 支持程序代码';
//说明:$r[titlepic]为标题图片字段变量。$listtemp为模板内容变量。 |
例子2:如果信息是今天发布的就显示“NEW”图片标识。
1 2 3 4 5 6 7 8 |
$newimg = '' ;
if (time()- $r [newstime]<=1*24*3600)
{
$newimg = '帝国CMS让模板list.var支持程序代码' ;
}
$listtemp = '[!--title--] ' . $newimg . ' ' ;
//说明:$r[newstime]为发布时间字段变量。$listtemp为模板内容变量。 |
例子3:调用投稿用户的公司名称。
1 2 3 4 5 |
$userr = $empire ->fetch1( "select company from {$dbtbpre}enewsmemberadd where userid='$r[userid]' limit 1" );
$listtemp ='
[!--title--] 公司名称: '.$userr[company].' ';
//说明:$r[userid]为发布者用户ID字段变量。$listtemp为模板内容变量。 |
例子4:让[!--no.num--]信息标号在列表内容模板(list.var)中从0开始(默认从1)
1 2 |
$no = $no -1;
$listtemp = '<div class="swiper-slide" id="slide_' . $no . '"><img src="[!--titlepic--]" alt="[!--title--]"></div>' ; |
拓展:灵动标签<?=$bqno-1?>即可
例子5:帝国cms时间如何分开调用呢
如:
这个分开调用一般要看在什么页面
一般这个用的最多的是列表页调用
1 2 3 4 5 |
EG:(列表页LIST.VAR程序支持代码)
$year = date ( 'Y' , $r [newstime]);
$yue = date ( 'm' , $r [newstime]);
$day = date ( 'd' , $r [newstime]);
$listtemp = '<li>年:' . $year . '</li><li>月:' . $yue . '</li><li>日:' . $day . '</li>' ; |
万能法:
1 |
使用程序代码: '.format_datetime($r[newstime],' Y-m-d ').' |
例子:
1 2 3 4 5 6 |
$listtemp ='<li class = "wow animated" >
<dl>
<dt><a href= "[!--titleurl--]" ><img src= "[!--titlepic--]" alt= "[!--title--]" ></a><div class = "in-date" ><em><p> '.format_datetime($r[newstime],' d ').' </p></em><p> '.format_datetime($r[newstime],' d ').' </p></div></dt>
<dd><a href= "[!--titleurl--]" ><h5>[!--title--]</h5></a><p>[!--smalltext--]</p><a href= "[!--titleurl--]" ><span>READ MORE ></span></a></dd>
</dl>
</li>'; |
帝国cms[!--newstime--]单独调用年、月、日
其他说明:
1、如果$listtemp引用模板内容是用单引号,那么里面使用单引号前面要加\,
例如:$listtemp='帝国CMS让模板list.var支持程序代码 ';
2、相反如果引用模板内容是用双引号,那么里面使用双引号前面也要加\,
例如:$listtemp="帝国CMS让模板list.var支持程序代码 ";
注意:就是在list.var使用程序代码时,所有PHP代码要顶格写,前面不要有空格,最常见的$listtemp前面不要有空格。 下载地址: 如何修改微信小程序显示名称 帝国cms首页换成列表页方法 |