织梦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'} 。
上一篇:
下一篇:
版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!