演示链接:查看演示

dedecms列表页list标签weight权重排序方法

dedecmsCMS列表页list标签weight权重排序方法:(注:红色标记部分就是修改处)

 

1、打开include/arc.listview.class.php

 

2、找到 

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

$ordersql = "  ORDER BY arc.lastpost $orderWay";

}

 

替换

 

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

            $ordersql = "  ORDER BY arc.lastpost $orderWay";

        }

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

            $ordersql = "  ORDER BY arc.weight $orderWay";

        }

 

3、找到

 

    

 //如果不用默认的sortrank或id排序,使用联合查询(数据量大时非常缓慢)

        if(preg_match('/hot|click|lastpost/', $orderby))

 

替换

 

  

//如果不用默认的sortrank或id排序,使用联合查询(数据量大时非常缓慢)

     if(preg_match('/hot|click|lastpost|weight/', $orderby))

 

4、找到

$query = "SELECT id FROM `dede_arctiny` arc WHERE {$this->addSql} $ordersql LIMIT $limitstart,$row ";

 

替换

$query = "SELECT id FROM `dede_archives` arc WHERE {$this->addSql} $ordersql LIMIT $limitstart,$row ";

 

5、标签调用:

 

  

{dede:list orderby='weight' pagesize ='3'}

{/dede:list}

 

接下来{dede:list}标签就支持了按权重排序的调用了。
 

THE END
喜欢就支持一下吧
点赞0 分享