dedecms v5.6版本已经中已经添加权重字段,并且在{dede:arclist标签中默认可以使用(5.7中的{dede:arclist}
也已经可以使用)。但在列表页的标签 {dede:list中是还是无法按权重实现排序。(v5.7中,{dede:list}
也可以这样改)
解决方法:
1、打开\include\目录中的arc.listview.class.php文件,搜索-排序方式,然后在
else if($orderby=="lastpost") { $ordersql = " order by arc.lastpost $orderWay"; }
这段代码和
else { $ordersql=" order by arc.sortrank $orderWay"; }
这段代码中间粘贴上
else if($orderby == 'weight') $ordersql = " order by arc.weight asc";
找到 if(preg_match('/hot|click|lastpost/',$orderby))
修改成 if(preg_match('/hot|click|lastpost|weight/',$orderby))
保存文件。
这个时候在列表页里就可以使用
{dede:list pagesize='5' orderby='weight' orderway="asc"}
进行排序了。