织梦list orderby=weight 按权重排序无效问题

织梦dedecms  list orderby=weight权重排序效问题 ,找到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)), [搜索 hot|click|lastpost 定位]

另外:

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

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

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/c26a215111e689fa3e2b329d20ad7e8b.html