dede专题节点文章怎么按id类型排序

来源:undefined 2025-01-01 08:28:25 1005

dede专题节点文章怎么按id类型排序?

dede专题节点文章按id,点击等类型排序

使用dedecms弄一个专题,添加内容发现内容标题不是按照添加的id排序的,也不是按照id顺序排列的。感觉像是随机的

  推荐学习:织梦cms

按照 标题的id  降序排列。

这个效果需要修改2 个php文件。

第一步骤:

1. 修改  includetaglibchannelspecialtopic.lib.php  文件

2. 在第52行 处 有这行代码:

1

$ctag->GetAtt(imgwidth), $ctag->GetAtt(imgheight), all, default, $keywords, $listTemplet, 0, $idlist,

登录后复制

修改成:

1

$ctag->GetAtt(imgwidth), $ctag->GetAtt(imgheight), all, asc, $keywords, $listTemplet, 0, $idlist,

登录后复制

3. 保存文件结束

1.修改includetaglibarclist.lib.php

2. 大约在196行处。有这行代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

//文档排序的方式

$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.  修改结束

下面再给一个实现方法

1、找到 include/taglib//channel/specialtopic.lib.php 

2、将 require_once(DEDEINC./taglib/arclist.lib.php); 换成 require_once(DEDEINC./taglib/arclist.lib2.php); 

3、复制arclist.lib.php 改名成 arclist.lib2.php 

然后修改arclist.lib2.php 

查找$order=desc 替换成 $orderby=id 

仿站关于是升序还是降序排列只需要 

查找$orderWay = AttDef($order,desc); 替换成 $orderWay = AttDef($order,asc); 

想调用以下参数,只需要按着修改就行 

1

2

3

4

5

6

7

§ orderby=hot 或 orderby=click 表示按点击数排列 

§ orderby=sortrank 或 orderby=pubdate 按出版时间排列 

§ orderby=near 

§ orderby==lastpost 按最后评论时间 

§ orderby==scores 按得分排序 

§ orderby=id 按文章ID排序 

§ orderby=rand 随机获得指定条件的文档列表

登录后复制

对于dedecms 5.1的版本

id排序增加功能更 

1

2

3

4

5

6

7

8

9

10

11

12

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)"; 

}

登录后复制

以上就是dede专题节点文章怎么按id类型排序的详细内容,更多请关注php中文网其它相关文章!

最新文章