就是通过点击文章的tag后,出现tag搜索列表展示页面
默认好像是按发布时间正序展示的
我想改为按发布时间倒序
但是看了search.html页面,貌似无法修改
而application\search\controller\index.php页面
我在function tag()函数中
把原有的
$res = D(get_model($value['modelid']))->field('id,title,de ion,inputtime,updatetime,click,thumb,nickname,url,catid,flag,color')->where(array('id'=>$value['aid'],'status'=>1))->find();
修改为:
$res = D(get_model($value['modelid']))->field('id,title,de ion,inputtime,updatetime,click,thumb,nickname,url,catid,flag,color')->where(array('id'=>$value['aid'],'status'=>1))->order('updatetime desc')->find();
依然是按时间正序排序
我试了->order('id desc'),结果也是一样
一、find方法返回一条记录,排序规则为先查询后排序,所以无效。 二、指定了id=aid,所以也只能有一条记录,排不排都无效。 三、你可以这样做: $search_data = array(); foreach ******* { $db = D(get_model($value['modelid'])); $inputtime = $db->field('inputtime')->where(array('id'=>$value['aid']))->find(); $res = $db->field('id,title,de ion,inputtime,updatetime,click,thumb,nickname,url,catid,flag,color')->where(array('id'=>$value['aid'],'status'=>1))->find(); array_push(array_combine($inputtime,$res)); } ksort($search_data); 加官方QQ群提问比较方便,论坛没什么人的。@ceshi2008 {m:lists field="title,url,inputtime" modelid="1" where="flag<>1" limit="40"} 或者loop $data $v下面加一行 <?php if($v['flag'] == 1) continue; ?>我有个类似的问题,也在这个帖子里一起问了吧。 首页调用所有栏目的文章,带置顶属性的帖子被自动排在最前面了。但是因为我栏目特别多,置顶的内容也特别多,导致首页调用40条内容,全是置顶的。现在想不显示这些置顶的,应该怎么处理? {m:lists field="title,url,inputtime" modelid="1" limit="40"} {loop $data $v} <li><span>{date('m-d',$v['inputtime'])}</span> <i class="fa fa-caret-right"></i> <a href="{$v[url]}" target="_blank" title="{$v[title]}">{str_cut($v['title'], 75)}</a></li> {/loop}