您现在的位置是:首页 > 教程 > dedecms教程dedecms教程
dede专题节点文章按id点击等类型排序的实现方法
宁儒熙2024-05-24 16:57:20dedecms教程已有人查阅
导读使用dedecms弄一个专题,添加内容发现内容标题不是按照添加的id排序的,也不是按照id顺序排列的。感觉像是随机的,按照 标题的id 降序排列。
使用dedecms弄一个专题,添加内容发现内容标题不是按照添加的id排序的,也不是按照id顺序排列的。感觉像是随机的,按照 标题的id 降序排列。
这个效果需要修改2 个php文件。
第一步骤:
1. 修改 includetaglibchannelspecialtopic.lib.php 文件
2. 在第52行 处 有这行代码:
第二步骤:
1.修改includetaglibarclist.lib.php
2. 大约在196行处。有这行代码:
下面再给一个实现方法
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
这个效果需要修改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')";
}
本文标签:
很赞哦! ()
相关文章
随机图文
-
dedecms模板中当前位置怎么添加样式
在进行dedecms模板仿制的时候通常会遇到被仿站的当前位置与dedecms默认的当前位置显示样式不同的情况,这样就需要修改dedecms的当前位置标签{dede:field.position} -
织梦dedecms首页幻灯片不显示的原因和解决办法
DEDE首页幻灯片不显示的大部分原因都是因为以下两点:1.DEDE幻灯片里.swf动画的路径错误。2.就是你设置的幻灯图片附件的格式问题.我们一般经常大部 -
修改dedecms织梦上传文件自动重命名的实现方法
本文介绍下,如何修改dedecms上传文件自动重命名的方法,有需要的朋友,可以参考下。1、打开/include/dialog/select_soft_post.php -
织梦dede模板标签帮助说明指引
Dedecms5.7版本更新以后,较大一个好处就是非常灵活,如果在学习中有难度的话,大家可以首先去官方的《模板制作帮助文档》查看这些标记的简介,如何来看帮助文档呢
留言与评论 (共有 条评论) |