dede:list及dede:arclist 按权重排序的方法

dede:list及dede:arclist 按权重排序的方法

有时我们需要做文章排名,比如指定第一名到第三名在前面,这样就用到这个权重排序方法。稍改下就可以完美支持。。

dede:list 的方法

  1. 1

    找到”根目录\include\arc.listview.class.php”文件。

  2. 2

    修改代码:在文件第727行处添加按weight排序判断代码(红色部分为新添加代码)。

     //排序方式$ordersql = ”;        if($orderby==”senddate” || $orderby==”id”) {            $ordersql=” ORDER BY arc.id $orderWay”;        }        else if($orderby==”hot” || $orderby==”click”) {            $ordersql = ” ORDER BY arc.click $orderWay”;        }        else if($orderby==”lastpost”) {            $ordersql = ”  ORDER BY arc.lastpost $orderWay”;        }       else if($orderby==”weight”) {            $ordersql = ”  ORDER BY arc.weight $orderWay”;        }        else {            $ordersql=” ORDER BY arc.sortrank $orderWay”;        }

  3. 3

    再在第778行处找到此段代码

      //如果不用默认的sortrank或id排序,使用联合查询(数据量大时非常缓慢)     if(preg_match(‘/hot|click|lastpost|weight/’, $orderby))

      并添加红色部分内容。

  4. 4

    标签调用:

      {dede:list orderby=’weight’ orderway=’asc’}

      这样{dede:list}标签就支持了按权重排序的调用,并且动静态状态下测试均成功!

    END

dede:arclist的修改方法

1

在织梦系统中找到以下目录\include\taglib中的arclist.lib.php文件并打开

   大约在74 、75行找到:

      // arclist是否需要weight排序,默认为”N”,如果需要排序则设置为”Y”    $isweight = $ctag->GetAtt(‘isweight’);

把这行修改为:

  $weight = $ctag->GetAtt(‘weight’);

大约在327行找到,并修改

    //文档排序的方式    $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 == ‘weight’) $ordersql = ”  order by arc.weight asc”;//插入这句 从小到大

    else $ordersql = ” ORDER BY arc.sortrank $orderWay”;

 

然后用orderby=’weight’

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114190.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux系统如何修改用户名_两种方案对比报告

    linux系统如何修改用户名_两种方案对比报告在安装系统的时候,经常会无意识的随便起个用户名,后面如果发现该用户名不好或因为环境需要须重起个用户名,经过查找资料和亲自测试发现有两种方案可选:手动修改和使用usermod等命令自动修改。方案一:手动修改各个关联用户文件以root身份登录系统文件的修改需要root权限,这里不管是原root用户登录还是普通用户切换到root下都可以,只要有修改权限就行。修改/etc/passwd这个文件中的用户名部

    2022年9月13日
    0
  • Python Flask中的jsonify

    Python Flask中的jsonify#-*-coding:utf-8-*-#@Time:2022/4/1311:46下午#@Author:renwoxing#@File:flask_restful_demo.py#@Software:PyCharmfromflaskimportFlask,jsonify,abort,requestapp=Flask(__name__)books=[{‘id’:1,’name’.

    2022年5月23日
    29
  • python全国计算机二级报名_python有证书考吗

    python全国计算机二级报名_python有证书考吗第一次参加全国计算机等级考试的考生对于网上报名的流程,对全国计算机考试流程中某些环节并不清楚,小编今天就整理下全国计算机等级考试流程及详细说明,提供网上报名流程示意图,解决大家在全国计算机等级考试报名过程中的疑问。(如有出入,请以官方信息为准)考生需登录各地计算机等级考试官方报名网站,进入“全国计算机等级考试报名系统”进行注册登录。(一)注册账号和登录一、注册ETEST通行证1.考生首次登录系…

    2022年9月3日
    3
  • applicationContext.xml配置简介「建议收藏」

    applicationContext.xml配置简介「建议收藏」spring的配置文件applicationContext.xml中的一些配置的作用。1.配置组件扫描器,使用注解方式开发<context:component-scanbase-package=”com.item.ikell”/>表示启动spring的组件扫描功能(从spring2.5版本开始)。即Spring容器初始化时,扫描base-package包或者子包下面的…

    2022年7月13日
    13
  • 错位排序公式_完全错位排列数

    错位排序公式_完全错位排列数首先,对于D(n),有1~n这样n个元素错排,所以对于第一个元素①,它现在可能的位置有(n-1)个,倘若它在第k个元素的位置上,对于第k个元素而言,它所在的位置就有两种可能—第一种,它处在非第一个元素①位置上,所以对于接下来的排列就相当于是n-1个元素的错排,即D(n-1);第二种,它处在第一个元素①的位置上,所以在排列D(n)中有两个元素找到了位置,那么接下来的队列就相当于是n-2个元素的错排。…

    2022年10月22日
    0
  • springboot的介绍_Springboot的优点

    springboot的介绍_Springboot的优点Springboot入门介绍一、Spring框架概述1.1什么是SpringSpring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作《ExpertOne-On-OneJ2EEDevelopmentandDesign》。Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的Ja…

    2022年4月19日
    99

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号