织梦dedecms列表页显示顺序,根据个别字段值实现重新排列

织梦文章列表中,比如我要求显示最新文章,并按id降序排列,但是,附加表中有一个字段,就叫结束时间的endtime字段,要求按这个字段的值重新排序.比如要求,如果结束时间的值小于系统当前时间,则这个字段值对应的文档自动放到文章列表的最结尾显示.   在文章列表中.要求结束的活动自动排到最后面显示.怎么实现呢   需要修改系统文件.includearc.listview.class.PHP   找到类似这句$artlist1 .= $this->dtp2->GetResult();   修改为,意思是说,如果文档是已经结束活动的信息,与进行中的分开运算.最后进行拼接.这样,就可以把本已按id降序调用好的20个文章列表,进行重新调整位置后,再显示     if($row['myendtime']!=''){                       if($row['myendtime']<time()){//已结束的活动                                              $artlist2 .= $this->dtp2->GetResult();                   }else{                       $artlist1 .= $this->dtp2->GetResult();                       }                       $artlist=$artlist1.$artlist2;                                              }else{                       $artlist .= $this->dtp2->GetResult();                       }       如果是网站首页.用dede:arclist调用列表.则需要修改另外一个文件.includetaglibarclist.lib.php,找到下面两句.     $liststr = $dtp2->GetResult();   $artlist.= $liststr."rn";     ​整体替换为     $liststr = $dtp2->GetResult();                if($row['myendtime']!=''){        if($row['myendtime']<time()){//已结束的活动                               $artlist2 .= $liststr."rn";       }else{                             $artlist1 .= $liststr."rn";        }        $artlist=$artlist1.$artlist2;                }else{         $artlist.= $liststr."rn";        }      本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com