帝国CMS分类信息有效期

一、有效期 设定

分类信息,通常要设定有效期,如:此信息还剩 N 天 。等等。且大家都在找如何让有效期能根据判断实际,显示天数和是否过期。下面我在分享一下具体操作(我会尽量用最详细的说明)

1、在“分类信息模型”里的“管理字段”中新增字段:

    字段设置为:

    字段名:enddate (这个是例子,可自定)
    字段标识:自定
    字段类型:小型字符型(TEXT)    长度留空即可
    输入表单显示元素:日期(date)  长度也留空即可
    * 其它不选不填 。(字段顺序 填数字。可自定,是添加信息与投稿的显示前与后的关联)

2、记得在分类信息中“管理系统模型”中重新点修改一下。(打上“录入表单模板”和“前台投稿表单模板”前的勾)

     打上:录入项 搜索项 投稿项 必填项 列表模板 内容模板 可增加 可修改 等的勾(这个可根据自己要求。如要采集,有此项的话,请在采集项打下勾)。

3、在分类信息内容模板页 中适当的位置添加以下代码:(灵动标签SQL根据需要可更改)

——————————————————————— 开始 ———————

有效期:

[e:loop={'select * from [!db.pre!]ecms_info where checked=1 order by newstime desc,id desc limit 1',1,24,0}]
<?php
$enddate = explode("-", $bqr[enddate]);    //enddate为字段名。如果有改,请更改全部。我已描蓝了。
$newstime = explode("-", $bqr[newstime]);  // 发布时间,格式为:Y-m-d H:i:s
$lt = mktime(0,0,0,$enddate[1], $enddate[2], $enddate[0]); 
$st = mktime(0,0,0,$newstime[1], $newstime[2], $newstime[0]); 
$overtime=$lt - $st;
$days=$overtime /86400;
if($days<0)
{
echo "此信息已过期"; //建议可换成图片形式
}
else 
{
echo "此信息还剩 ".$days." 天";  // CSS自定
}
?>
[/e:loop]

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注