专业的织梦dedecms仿站建站技术资讯网站!- 【46仿站网】

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

文章来源:未知 阅读: 发表时间:2019-08-07
织梦dedecms列表页显示顺序,根据个别字段值实现重新排列,其实大多数的站长都不明白制作一个好的网站模板对于SEO是多重要,织梦作为很流行的cms之一,模板制作过程中经常会遇到这样那样的问题。今天小编就来跟大家讲讲织梦dedecms列表页显示顺序,根据个别字段值实现重新排列。

织梦文章列表中,比如我要求显示最新文章,并按id降序排列,但是,附加表中有一个字段,就叫结束时间的endtime字段,要求按这个字段的值重新排序.比如要求,如果结束时间的值小于系统当前时间,则这个字段值对应的文档自动放到文章列表的最结尾显示.

在文章列表中.要求结束的活动自动排到最后面显示.怎么实现呢

需要修改系统文件.include\arc.listview.class.PHP

找到类似这句$artlist1 .= $this->dtp2->GetResult();

修改为,意思是说,如果文档是已经结束活动的信息,与进行中的分开运算.最后进行拼接.这样,就可以把本已按id降序调用好的20个文章列表,进行重新调整位置后,再显示

[php] view plain copy
 
  1. if($row['myendtime']!=''){  
  2.                     if($row['myendtime']<time()){//已结束的活动  
  3.                       
  4.                     $artlist2 .= $this->dtp2->GetResult();  
  5.                 }else{  
  6.                     $artlist1 .= $this->dtp2->GetResult();  
  7.                     }  
  8.                     $artlist=$artlist1.$artlist2;  
  9.                       
  10.                     }else{  
  11.                     $artlist .= $this->dtp2->GetResult();  
  12.                     }  

如果是网站首页.用dede:arclist调用列表.则需要修改另外一个文件.\include\taglib\arclist.lib.php,找到下面两句.

[php] view plain copy
 
  1. $liststr = $dtp2->GetResult();  
  2.       $artlist.= $liststr."\r\n";   

整体替换为

[php] view plain copy
 
  1. $liststr = $dtp2->GetResult();  
  2.        
  3.      if($row['myendtime']!=''){  
  4.      if($row['myendtime']<time()){//已结束的活动  
  5.        
  6.                     $artlist2 .= $liststr."\r\n";  
  7.     }else{  
  8.      
  9.                     $artlist1 .= $liststr."\r\n";  
  10.      }  
  11.      $artlist=$artlist1.$artlist2;  
  12.        
  13.      }else{  
  14.       $artlist.= $liststr."\r\n";  
  15.      }   

大家既然都知道了织梦dedecms列表页显示顺序,根据个别字段值实现重新排列,并且46仿站网小编也在上文中给大家提供了{keyword2}的方法,想必各位应该可以好好去尝试一下了吧!也请大家继续关注后续的内容哦!

如果你觉得本文对你有帮助就点个赞吧!

没有解决?点击这里呼叫大神来帮忙(付费)!

  • 最新
  • 热门
  • 随便看看