How to sort dede topic node articles by id type?
dede topic node articles are sorted by id, click and other types
Use dedecms to create a topic, add content and find that the content titles are not sorted according to the added id , nor are they arranged in id order. It feels like random
Recommended learning:梦Weavercms
Arrange in descending order according to the id of the title.
This effect requires modifying 2 php files.
The first step:
1. Modify the includetaglibchannelspecialtopic.lib.php file
2. There is this line of code at line 52:
$ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'default', $keywords, $listTemplet, 0, $idlist,
Modify to:
$ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'asc', $keywords, $listTemplet, 0, $idlist,
3. Save the file and end
Second step:
1. Modify includetaglibarclist.lib.php
2. About 196 Wherever you go. There is this line of code:
//文档排序的方式 $ordersql = ''; if($orderby=='hot' || $orderby=='click') $ordersql = " order by arc.click $orderWay"; else if($orderby == 'sortrank' || $orderby=='pubdate') $ordersql = " order by arc.sortrank $orderWay"; else if($orderby == 'id') $ordersql = " order by arc.id $orderWay"; else if($orderby == 'near') $ordersql = " order by ABS(arc.id - ".$arcid.")"; else if($orderby == 'lastpost') $ordersql = " order by arc.lastpost $orderWay"; else if($orderby == 'scores') $ordersql = " order by arc.scores $orderWay"; else if($orderby == 'rand') $ordersql = " order by rand()"; //增加 开始 else if($orderby == 'asc') $ordersql = " order by arc.id asc"; //增加 结束 else $ordersql = " order by arc.sortrank $orderWay";
3. End of modification
Here is another implementation method
1. Find include/taglib//channel/specialtopic.lib.php
2. Replace require_once(DEDEINC.'/taglib/arclist.lib.php'); with require_once(DEDEINC.'/taglib/arclist.lib2.php');
3. Copy arclist.lib.php and rename it to arclist.lib2.php
Then modify arclist.lib2.php
Find $order='desc' and replace it with $orderby='id'
As for whether the imitation site is arranged in ascending or descending order,
find $orderWay = AttDef($order,'desc'); and replace it with $orderWay = AttDef($order,'asc');
If you want to call the following parameters, just click and modify
§ orderby='hot' 或 orderby='click' 表示按点击数排列 § orderby='sortrank' 或 orderby='pubdate' 按出版时间排列 § orderby='near' § orderby=='lastpost' 按最后评论时间 § orderby=='scores' 按得分排序 § orderby='id' 按文章ID排序 § orderby='rand' 随机获得指定条件的文档列表
For the version of dedecms 5.1
id sorting added function
include/inc/.inc_fun_SpFullList.php //文档排序的方式 $ordersql = ""; if($orderby=='rand') $ordersql = " order by rand()"; else if($orderby=='click'||$orderby=='hot') $ordersql = " order by arcf.click desc"; else if($orderby=='digg') $ordersql = " order by arcf.digg desc"; else if($orderby=='diggtime') $ordersql = " order by arcf.diggtime desc"; else $ordersql=" order by arcf.aid desc"; // 2013年针对专题id列表所加功能 if($idlist!=''){ $ordersql = " order by find_in_set(arcf.aid,'$idlist')"; }
The above is the detailed content of How to sort dede topic node articles by id type. For more information, please follow other related articles on the PHP Chinese website!