dede排序对网站来说一直存在问题,默认是按照最新发布时间排序。这样排序有个问题,一旦更新之后即被视为最新发布,于是原本做好的排序瞬间就乱了。
这种时候,按权重排序是个很好的选择,但按权重排序到处存在BUG~。很多地方都缺少设置,要么是设定后完全不起作用,在百度和论坛找了很多帖子,都没能完全解决问题。在做第二个网站的时候,终于把BUG修订完全了。
要解决权重排序的问题,主要集中在以下几个文件上:
/include/arc.freelist.class.php   自由列表对应的文件
/dede/templets/freelist_edit.htm 新增自由列表对应的文件
/dede/templets/freelist_add.htm  修改自由列表对应的文件
/include/arc.listview.class.php   list列表对应的文件
/include/taglib/arclist.lib.php   arclist列表对应的文件
修改的内容很简单,按照以下步骤即可修正:
1、打开/include/arc.freelist.class.php, 找到以下代码:
else if($orderby=="rand")
{
$ordersql = "  ORDER BY rand()";
}
在代码下方插入以下代码后保存:
else if($orderby=="weight")
{
$ordersql = " order by arc.weight asc";
}
2、打开/dede/templets/freelist_add.htm,找到以下代码:
<td height="28" align="left">排列顺序:
         <select name="orderby" id="orderby" style="width:120">
在代码下方插入以下代码,保存:
<option value="weight">权重值</option>
3、打开/dede/templets/freelist_edit.htm,找到以下代码:
<?php
       echo "<option value=\"$orderby\" selected>{$sortarrs[$orderby]}</option>\r\n";
?>
在代码下方插入以下代码,保存:
<option value="weight">权重值</option>
4、打开/include/arc.listview.class.php,找到以下代码:
else if($orderby=="lastpost")
{
      $ordersql = "  ORDER BY arc.lastpost $orderWay";
}
在代码下方插入以下代码:
else if($orderby=="weight")
{
$ordersql = " order by arc.weight asc";
}
找到以下代码:
if(preg_match('/hot|click|lastpost|/', $orderby))
替换为以下代码并保存:
if(preg_match('/hot|click|lastpost|weight/', $orderby))
5、打开/include/taglib/arclist.lib.php,找到以下说明文字:
//功能:增加按好评数和差评数调用
替换为以下代码并保存:
else if($orderby == 'weight') $ordersql = "  ORDER BY arc.weight asc";
//功能:增加按好评数和差评数调用
修改这5个文件,即能解决权重排序的问题(根据权重从小到大排列),并使得自由列表中,也可以采用权重排序的方式生成列表。
调用例子:
{dede:arclist flag='a' limit='0,1' typeid='10' isweight='y' orderby='weight'}
        <a href="/z/al/index_12_1.html" target="_blank">
        <img src="[field:picname/]" width="300" height="168" alt="[field:shorttitle/]" style="border:1px solid "></a>
{/dede:arclist}

dede织梦技巧:教你彻底解决dede按权重排序的问题(转)的更多相关文章

  1. 如何解决DEDE织梦友情链接字数限制与链接个数限制的问题?

    如何解决DEDE织梦友情链接字数限制与链接个数限制的问题!织梦网站非常适合网站搭建以及网站优化,而友情链接是做优化必不可少的模块,我们经常搭建织梦网站发现织梦系统的友情链接模板有时候会限制字数不显示以 ...

  2. Dede织梦验证码不显示,织梦后台登陆验证码不显示解决方法

    关于"织梦验证码不显示"的解决方法 "织梦验证码无法显示出来"的问题分析? 1.之前显示正常,但是换了服务器后就不能够正常显示:(这种通常是网站程序经过迁移后所 ...

  3. 关于将dede织梦data目录迁移出web目录

    关于将dede织梦data目录迁移出web目录织梦官方提供了一个教程,但是如果你是按照他们提供的教程做的话会出现很多问题.比如验证码问题,图片显示问题等等一大堆.织梦官方这种是很不负责任的,因为那个教 ...

  4. dede织梦后台如何修改?如何增加删除菜单?(

    织梦后台的模板存放在dede/templets下面, 登陆首页模板login.htm, 进入首页模板index_body.htm, 左侧菜单模板index_menu2.htm. 修改左侧菜单dede/ ...

  5. DEDE织梦常用的调用方法

    DEDE织梦常用的调用常规调用: 网站名称调用:<title>{dede:global.cfg_webname/}</title> 网站关键词调用:<meta name= ...

  6. dede织梦如何防止被黑客入侵渗透?

    dede精简设置篇:避免被hack注射挂马 精简设置篇:不需要的功能统统删除.比如不需要会员就将member文件夹删除.删除多余组件是避免被hack注射的最佳办法.将每个目录添加空的index.htm ...

  7. dede织梦栏目页和文章页中获取当前栏目名称方法

    一般情况下,在dede织梦系统中列表页.栏目页和文章页中获取当前所在栏目名称只需要代码:{dede:type}[field:typename]{/dede:type}即可,不需要定义ID,默认的就是当 ...

  8. dede织梦后台页面及功能修改精简操作方法

    有很多使用织梦程序的站长往往都不喜欢使用默认的后台,但对于很多小白站长其实也不太懂程序的功能,而且如果显示或者开了过多的功能只会给自己带来困扰,所以小白站长都喜欢一些傻瓜式的后台操作界面.那么,ded ...

  9. 如何有效防止DEDE织梦系统被挂木马安全设置(仅供参考)

    尊敬的客户,您好!     感谢广大客户对我司工作的信任和支持!      我司在最近的一个多月内陆续发现多起因 DedeCMS 安全漏洞造成网站被上传恶意脚本的事件,入侵者可利用恶意脚本对外发送大量 ...

随机推荐

  1. 搭建伪分布式 hadoop3.1.3 + zookeeper 3.5.7 + hbase 2.2.2

    安装包 Hadoop 3.1.3 Zookeeper 3.5.7 Hbase 2.2.2 所需工具链接: 链接:https://pan.baidu.com/s/1jcenv7SeGX1gjPT9RnB ...

  2. MongoDB 复合索引结构

  3. LeetCode初级算法之数组:283 移动零

    移动零 题目地址:https://leetcode-cn.com/problems/move-zeroes/ 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺 ...

  4. 软件工程团队作业-Alpha阶段项目复审

    Alpha阶段项目复审 复审人:黄杰 复审总结表 小组的名字和链接 优点 缺点,bug/140字 最终名次 项目 一个普通的团队 https://www.cnblogs.com/clsgghost/p ...

  5. AcWing 400. 太鼓达人

    大型补档计划 题目链接 神仙题.考虑转为图论模型. 若以 \(2 ^ k\) 个点,相互转化,很容易看出要求一个哈密尔顿环,显然对于 \(1000\) 规模的数据求不出来. 对于图论中环的算法,并且能 ...

  6. Docker安装rocketmq踩坑指南

    Docker 网络 Docker容器运行的时候有host.bridge.none三种网络可供配置. 默认是bridge,即桥接网络,以桥接模式连接到宿主机:host是宿主网络,即与宿主机共用网络:no ...

  7. sql server如何把退款总金额拆分到尽量少的多个订单中

    一.问题 原来有三个充值订单,现在要退款450元,如何分配才能让本次退款涉及的充值订单数量最少?具体数据参考下图: 二.解决方案 Step 1:对可退金额进行降序排列,以便优先使用可退金额比较大的订单 ...

  8. SQL盲注、SQL注入 - SpringBoot配置SQL注入过滤器

    1. SQL盲注.SQL注入   风险:可能会查看.修改或删除数据库条目和表.   原因:未对用户输入正确执行危险字符清理.   固定值:查看危险字符注入的可能解决方案. 2. pom.xml添加依赖 ...

  9. [从源码学设计]蚂蚁金服SOFARegistry之时间轮的使用

    [从源码学设计]蚂蚁金服SOFARegistry之时间轮的使用 目录 [从源码学设计]蚂蚁金服SOFARegistry之时间轮的使用 0x00 摘要 0x01 业务领域 1.1 应用场景 0x02 定 ...

  10. Java 8 Lambda表达式-接口实现

    Java 8 Lambda表达式在只有一个方法的接口实现代码编写中,可以起到简化作用: (argument list) -> body 具体看Runnable接口的例子 public class ...