欢迎来到站长天空!

DedeCMS

当前位置: 主页 > CMS教程 > DedeCMS

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

时间:2020-11-04 00:00:00|栏目:DedeCMS|点击:

">

按照 标题的id 降序排列。

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

第一步骤:
1. 修改 includetaglibchannelspecialtopic.lib.php 文件

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

$ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'default', $keywords, $listTemplet, 0, $idlist,
修改成:
$ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), 'all', 'asc', $keywords, $listTemplet, 0, $idlist,
3. 保存文件结束

第二步骤:
1.修改includetaglibarclist.lib.php

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

//文档排序的方式
$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');

想调用以下参数,只需要按着修改就行
§ orderby='hot' 或 orderby='click' 表示按点击数排列
§ orderby='sortrank' 或 orderby='pubdate' 按出版时间排列
§ orderby='near'
§ orderby=='lastpost' 按最后评论时间
§ orderby=='scores' 按得分排序
§ orderby='id' 按文章ID排序
§ orderby='rand' 随机获得指定条件的文档列表

对于dedecms 5.1的版本

id排序增加功能更
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热门tag,DEDE首页digg,DEDE随机热门关键字调用方法

栏    目:DedeCMS

下一篇:DedeCMS文章列表每5隔行加横线的实现方法

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

本文地址:https://zz.feitang.co/CMSjiaocheng/27352.html

广告投放 | 联系我们 | 版权申明

申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:257218569 | 邮箱:257218569@qq.com

Copyright © 2018-2026 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号