帝国CMS列表页个性时间显示方式,我们使用PHP代码来做。
要在模板代码中使用PHP代码,就必须勾选此模板代码页面的-使用程序代码.位置就在添加模板页面的列表内容模板(list.var) (*)上边。
然后我们在list.var里边用PHP代码来实现我们的调用。
list.var使用PHP代码有几个规则
1、增加模板时list.var模板需要勾选“使用程序代码”选项。如图:
2、直接添加PHP代码,不需要加<?和?>程序开始和结束标记。
3、字段值数组变量为$r,对应的字段变量为$r[字段名],如:标题字段变量就是$r[title]。另外编号变量为$no
4、将最终模板内容赋给$listtemp变量。
例子2:如果信息是今天发布的就显示“NEW”图片标识。
$newimg='';
if(time()-$r[newstime]<=1*24*3600)
{
$newimg='<img src="NEW图片地址" border="0">';
}
$listtemp='<li><a href="[!--titleurl--]">[!--title--]</a> '.$newimg.'</li>';
上边将了在list.var中使用PHP规则,下边继续看我们的日期怎么实现。
我们在list.var中先使用以下代码分别获取年、月、日等
$newstime=$r[newstime];//获取信息发布时间
$year=format_datetime($newstime,"Y");//单独获取年
$month=format_datetime($newstime,"m");//单独获取月
$day=format_datetime($newstime,"d");//单独获取日
然后在需要的地方添加
年:'.$year.'
月:'.$month.'
日:'.$day.'
自己按需调用即可。
所以list.var中的完整代码就是
$newstime=$r[newstime];//获取信息发布时间
$year=format_datetime($newstime,"Y");//单独获取年
$month=format_datetime($newstime,"M");//单独获取月
$day=format_datetime($newstime,"d");//单独获取日
$listtemp='<div class="new_li">
<div id="xinwenDate"><p class="day">'.$day.'</p><p class="month">'.$month.'</p><p class="year">'.$year.'年</p></div>
<div id="xinwenList">
<p class="xinwenTitle"><a href="[!--titleurl--]">[!--title--]</a></p>
<div class="xinwenText">[!--smalltext--]</div>
</div>
</div>';