织梦list标签orderby=weight 按权重排序无效解决办法

织梦dedecms在使用LIST标签时,orderby=weight 按权重排序无效问题 ,下面言归正传。

1:找到list解析文件include/arc.listview.class.php 

发现排序规则里面并没有按照weight排序的判断,于是乎修改程序加入排序规则 

//排序方式

  $ordersql = '';

  if($orderby=="senddate" || $orderby=="id") {

   $ordersql=" order by arc.id $orderWay";

  }

  else if($orderby=="hot" || $orderby=="click") {

   $ordersql = " order by arc.click $orderWay";

  }

  else if($orderby=="lastpost") {

   $ordersql = "  order by arc.lastpost $orderWay";

  }

  else if($orderby=="weight") {

   $ordersql = "  order by arc.weight $orderWay";

  }

  else {

   $ordersql=" order by arc.sortrank $orderWay";

  }

同时修改条件 if(ereg(‘hot|click|lastpost’,$orderby)) 为 if(ereg(‘hot|click|lastpost|weight’,$orderby)) 。

 

另外arclist 对weight的排序也不准确,需要加上一个isweight的属性

{dede:arclist typeid=’32’ pagesize=’20’ isweight=’Y’ orderby=’weight’ orderway=’asc’} 。

①本站所有CMS源码、杰奇CMS模板、PTCMS源码模板、YGBOOK源码模板、帝国CMS源码模板等仅用于学习和交流,勿用于商业。
②本站资源有安装及使用文档,安装使用请自行探索,如您对购买的程序或是模板无法胜任安装工作,请点击付费安装。
③本站资源来源网络或者用户投稿,切勿私自传播于网络,否则将追究法律责任。且仅供学习交流之用,如有侵权请联系删除。
④如果资源失效或下载链接错误请联系站长。
蓝大富博客 » 织梦list标签orderby=weight 按权重排序无效解决办法
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?喜欢就按“ctrl+D”收藏我吧!♡