首先在这里说明一下,网上搜索织梦文章列表自定义的方式无非有以下几种:

  1、修改配置文件,新增一个orderid字段,想法很好,但是!但是!!!可能是早期版本的缘故,不适合现在的v5.7系统!按照网上说的办法修改配置文件根本就不对!希望织梦的刚入门的人见到引以为戒,不要是个方法自己连试都没试就转到自己的博客中,第二种是修改文章编辑页的文章排序,自定义置顶方法,虽说看起来不错,但是!如果你只想要更换其中几个的位置,难道还要全部重新点一遍吗?第三种是如下我引用的,也是扒的别人的成果,但是自己亲测可用。本人用的dede V5.7。用的dede:list排序方式的,亲测可用!!!

用织梦建站时候我们遇到某几篇文章按照自己的意思排列顺序,就要用到按权重排序,下面介绍织梦dedecms的dede:list和dede:arclist列表按权重排序修改方法。

倒序 orderway='asc'

orderway是设置排序的方式,值为desc和asc

dedecms列表页实现文档按权重weight排序

1,在list_artcile.htm模板中使用

{dede:list pagesize='12′ orderby='weight' orderway='desc'}

2,然后修改include目录下的arc.listview.class.php

查找else if($orderby=="lastpost") { $ordersql = "  ORDER BY arc.lastpost $orderWay";} , dedecms5.7sp2大概在768行

在下面补充

else if($orderby=="weight") { $ordersql = " order by arc.weight $orderWay"; }

3,同样是这个文件,

查找“if(preg_match('/hot|click|lastpost/', $orderby))”

改为:

if(preg_match('/hot|click|weight|lastpost/', $orderby))

上面三个步骤,即可实现列表页内容按权重排序,越小越靠前。仅限dedecms v5.7 SP2测试!

dede:arclist按权重排序的修改方法

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

大约在74 、75行找到:

// arclist是否需要weight排序,默认为"N",如果需要排序则设置为"Y"

$isweight = $ctag->GetAtt('isweight');

把这行修改为:

$weight = $ctag->GetAtt('weight');

或者修改了 170行 $isweight='N' 的值为Y

大约在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 == 'weight') $ordersql = "  order by arc.weight $orderWay";   //主要是这一句,应该是这一句就够了,需要修改的小伙伴,试一下只改这里

调用方法:orderby='weight'  orderway='desc'   //desc和asc

dede文章列表根据权重自定义排序的更多相关文章

  1. 织梦list文章列表按权重排序

    织梦的文章列表按权重排序 DEDECMS(织梦)5.6系统支持文档权重weight排序,可以在模板中使用: {dede:arclist row='10' titlelen='50' orderby=' ...

  2. Dede文章列表

    文章列表标签的使用: {dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheig ...

  3. 织梦dede文章列表调用标签的用法和规则

    织梦dede列表标签在任何模板的网站中都可能会使用到,而且我们在仿站的时候也经常要使用到列表标签.这里主机吧就给大家讲一下文章列表以及图片列表.软件列表以及分类信息列表标签的用法,和结合div+css ...

  4. salesforce 零基础学习(六十三)Comparable实现Object列表数据的自定义排序

    项目中通常有些需求为需要将某个sObject的数据列表按照某种规则排序显示到前台页面上,但是list上面的sort远远满足不了复杂的功能,此种情况需要自定义比较两个object大小的方法,所以需要创建 ...

  5. DEDE文章列表加上序号效果

    在文章列表上面加上序号列表的形式,使得文章列表表现得没那么单调,更加丰富一点. {dede:arclist orderby=pubdate type='commend.' titlelen='26' ...

  6. 织梦DEDE文章列表前面自动加递增数字标签

    实现的办法很简单,只须要在序号递增的处所加上这段代码就行 [field:global runphp=""yes"" name=autoindex][/field ...

  7. dede 文章列表页如何倒序排列

    {dede:arclist row='6' typeid='18' orderway='asc'} <li>;<a href="[field:arcurl/]"& ...

  8. DataGridView 绑定List集合后实现自定义排序

    这里只贴主要代码,dataList是已添加数据的全局变量,绑定数据源 datagridview1.DataSource = dataList,以下是核心代码. 实现点击列表头实现自定义排序 priva ...

  9. 织梦 {dede:list}列表按多种排序显示

    orderby='sortrank' 文档排序方式 orderby='hot' 或 orderby='click' 表示按点击数排列 orderby='sortrank' 或 orderby='pub ...

随机推荐

  1. [javascript] jquery的父子兄弟节点查找

    jQuery.parent(expr) 找父亲节点,可以传入expr进行过滤,比如$("span").parent()或者$("span").parent(&q ...

  2. [PHP]听说随机数mt_rand()比rand()速度快,闲的无聊测试了一下!

    废话不说上码 //microtime() 函数返回当前 Unix 时间戳的微秒数.//当设置为 TRUE 时,规定函数应该返回一个浮点数,否则返回一个字符串.默认为 FALSE. <?php h ...

  3. Jmeter系列(3)- Jmeter安装目录介绍

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter安装目录说明 bin:包含 ...

  4. Django编写自定义manage.py 命令

    官网文档地址:编写自定义 django-admin 命令 金句: 你所浪费的今天,正是昨天死的人所期待的明天. 开篇话: python manage.py <command> 的命令我们用 ...

  5. JasperReports入门教程(四):多数据源

    JasperReports入门教程(四):多数据源 背景 在报表使用中,一个页面需要打印多个表格,每个表格分别使用不同的数据源是很常见的一个需求.假如我们现在有一个需求如下:需要在一个报表同时打印所有 ...

  6. 在php中如何实现cookie即时生效,不用刷新就可以使用

    参考:https://www.jianshu.com/p/0468ef5dbf4d 今天在用php设置cookie的时候,发现cookie如果只是赋值一次的话,要手动刷新一下浏览器才能把数据及时更新, ...

  7. tp5 auth权限的原理

    我的一些个人理解,还是有些不懂的地方,有错误请指正,谢谢!!! class Auth{ //默认配置 protected $_config = array( 'auth_on' => true, ...

  8. Visual Studio 2015 + Windows 2012 R2, c++/cli Array::Sort() 抛出异常

    在Windows7上编译就是正常. 可见Windows2012 R2缺少了一些东西. 另外,有一个现象一样,但原因不一样的 https://stackoverflow.com/questions/46 ...

  9. 【Django】runserver 0.0.0.0:0 后,究竟发生了什么

    WSGI协议 Django是遵循WSGI协议设计的 WSGI协议主要包括server和application两个部分: WSGI server:负责从客户端接收请求,将request转发给applic ...

  10. (转)如何学好C语言

    原文:http://coolshell.cn/articles/4102.html    作者:陈皓 有人在酷壳的留言版上询问下面的问题 keep_walker : 今天晚上我看到这篇文章. http ...