在phpcmsv9里,分类信息里的筛选功能让人很兴奋,如果想在内容页里也想做筛选,那么就得把分类信息的函数移植到全局函数或者扩展函数里去,下一篇内容将为大家介绍.
本次内容是教大家做时间的筛选,因为做寿县房产网的时候,楼盘开盘有个开盘时间,所以找了很多资料解决了这个问题.
找到filters_sql函数加入如下代码:
function filters_sql($modelid)
elseif($fields[$k]['formtype'] == 'datetime') {
if(is_numeric($r)) {
$sql .=" AND `$k` = '$r'";
} else {
$fieldvalue = explode('_',$r);
$min = intval($fieldvalue[0]);
$max = $fieldvalue[1] ? intval($fieldvalue[1]) : 999999;
$sql .="AND TO_DAYS(`$k`) - TO_DAYS(NOW()) >= '$min' AND TO_DAYS(`$k`) - TO_DAYS(NOW()) < '$max'";
} //Cuoxin.com
}
关键点在:$sql .="AND TO_DAYS(`$k`) - TO_DAYS(NOW()) >= '$min' AND TO_DAYS(`$k`) - TO_DAYS(NOW()) < '$max'";
用到的是日期差的问题,前台调用的时候用如下代码:
开课计划:
{php $opentime = array('最近1个月|1_30','最近2个月|30_90','最近3个月|90_120','最近6个月|120_180','最近1年|180_360')}
{loop yp_filters('opentime',$modelid,$opentime) $r}
{$r[menu]}
{/loop}
大型站长资讯类网站! https://www.0833zz.com