织梦cms利用weight排序无效的解决方法

涉及的文件是includetaglibarclist.lib.php文件:

第570行左右:

 代码如下 复制代码
if ( $isweight==’y’ )

这一行代码简直是废柴,$orderWeight = list_sort_by($orderWeight, ‘weight’, ‘asc’);  对结果进行排序。

这个是有问题的,因为在得到这个$orderWeight之前,检索文档表的语句为:

 代码如下 复制代码

SELECT arc.*,tp.typedir,tp.typename,tp.corank,tp.isdefault,tp.defaultname,tp.namerule,

tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
FROM `dede_archives` arc LEFT JOIN `dede_arctype` tp ON arc.typeid=tp.id WHERE arc.typeid IN (29) AND

arc.arcrank > -1 ORDER BY arc.sortrank DESC

很明显了吧,我们在写标签的时候,写的是

 代码如下 复制代码

{dede:arclist orderby=’weight’ typeid=’29′ isweight=’y’

limit=’4,1′ titlelen=’100′ infolen=’100′ }

,本意是数据按照weight进行排序,二处理程序是按照

sortrank 检索的数据库,指定 isweight=’y’ 仅仅是起到了将检索出的数据集再根据weight排序。

 
所以处理办法非常简单:在该程序文件330行处,增加一行按照weight排序的处理语句:

 代码如下 复制代码

else if($orderby ==

‘weight’) $ordersql = ” order by arc.weight asc”;

我们再分离一个让list标签支持weight排序

 代码如下 复制代码

{dede:list pagesize='10' titlelen='50' orderby='weight'} •[field:textlink/]<br/> {/dede:list}

办法:

1、打开文件arc.listview.class.php

2、查找“else if($orderby=="lastpost") {” 语句,大概在609行,在此行前面按下回车健,插入如下语句:

 代码如下 复制代码

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

3、继续查找“if(ereg('hot|click|lastpost',$orderby))”语句,修改为:

 代码如下 复制代码

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

修改完成后,保存,如果目标里面已经使用了weight排序,生成一下,就可以看到,文档列表已经安装weight排序

4、模板调用

 代码如下 复制代码

{dede:arclist row='10' titlelen='50' orderby='weight'} •[field:textlink/]<br/> {/dede:arclist}

时间: 2024-08-05 11:21:34

织梦cms利用weight排序无效的解决方法的相关文章

织梦cms利用phpmyadmin删除指定IP的文章评论的方法

后台或者PHPMYADMIN运行下面的SQL语句    代码如下 复制代码 DELETE FROM `dede_feedback` WHERE `dede_feedback`.`ip` = '000.000.000.000'  000.000.000.000 为垃圾评论发布者的IP . 这里只介绍了phpmyadmin的方法,当然你也可以使用mysql cmd来操作了,方法很多看你怎么做的喉舌.

织梦cms中tag标签长度限制修改方法

有时候需要根据实际情况修改tag的长度,下面是方法,测试可用. 1.修改数据库中表dede_tagindex 和dede_taglist的tag字段属性:varchar(12)修改为varchar(255) . 这个步骤需要直接操作数据库. 2.修改文件:/include/helpers/archive.helper.php 查找:if(isset($tag[12]) 修改为:if(isset($tag[255]) ; 再将if(isset($tag[20]) 修改为:if(isset($tag

Dedecms织梦后台模块管理空白(不显示)解决方法

dedeCms后台模块管理中模块列表不显示的现象如下图: 解决办法: 如果之前有备份网站程序的话,直接在备份程序中按照以下途径找到以下文件夹:  代码如下 复制代码 data/module 复制里面所有文件后,粘贴到程序里面的相同的文件夹里面,覆盖所有文件. PS:如果没有备份网站,到dedecms官网下载一个与你的版本相同的源程序,按照上面的方法同样覆盖文件,然后更新缓存就可以了. dedeCms后台模块管理空白现象如下图: 解决办法: 这是因为你 安装模块,然后又卸载模块,卸载的时候选择了删

php获取今日头条视频地址并插入织梦cms数据库

每天一篇原创文章,今天更新php获取今日头条视频地址并插入织梦cms数据库.本文由零零下载站(http://www.xxindu.com)原创首发,转载请注明来处. 下面给出代码,有什么问题可以留言,小白代码,请勿见笑: 新建表dede_toutiao,直接给出sql文件,http://www.xxindu.com/upfile/dede_toutiao.zip,这是验证数据是否已经存在. <?php header('Content-Type:text/html;charset=utf-8');

PHP开源网站管理系统织梦CMS被发现植入后门

国内知名的PHP开源网站管理系统织梦CMS(DedeCms)v5.7 sp1版本被发现植入后门,黑客可通过此后门直接获得网站的控制权限,获取存储在服务器上的文件和数据库.据CMS官方数据显示,目前约有70万网站使用该系统搭建,涉及企业.政府机关.媒体机构.行业及个人网站等.瑞星公司特此紧急提醒使用该系统的网站管理员,使用瑞星网站密码安全检测系统查找后门并及时进行封堵. 据瑞星专家介绍,织梦CMS(Dedecms) v5.7 sp1版本的中的shopcar.class.php文件被植入一句后门代码

织梦CMS顶部添加横向登录框

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 织梦吧(DedeCMS8.COM)DedeCMS自学教程5.顶部添加横向导航.本节以DedeCMS默认风格为例,所以,如果你站点使用的不是默认模板,要灵活修改. 1.DedeCMS默认风格里,顶部左边有一段话"织梦CMS - 轻松建站从此开始!",很多朋友想把这段话修改成一个横向登录框,像织梦吧(dedecms8.com)

织梦CMS二次开发教程 实现图集缩略图的分页样式

中介交易 SEO诊断 淘宝客 云主机 技术大厅 首先织梦CMS系统不用过多介绍了,织梦好,好之梦! 织梦CMS5.7版本里默认自带有三种图集样式,模板名称分别为article_image.htm.article_image_cl.htm(新浪样式).article_image_new.htm(这个是5.7才有的图文幻灯样式).最近在做女人说的图集模板时发现dede默认的图集模板无法像文章一样实现分页样式,多次问度娘.谷哥均无果,于是仔细的对织梦的文件研究了一下发现织梦是可以实现这种样式的(如下图

织梦CMS站点文档存放路径url优化设置

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 DedeCMS自学教程13:织梦CMS站点文档存放路径url优化设置,织梦吧原创发布. 1.存放织梦CMS站点的静态网页文件目录,权限设为可写不可执行,不要给予执行权限.过多的权限会带来安全隐患,切记这一点.织梦CMS目录权限设置具体情况可以参考:www.d8bbs.com/thread-19589-1-1.html. 2.除静态首页inde

织梦CMS内容管理系统 排名效果不错的新发现

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 刚写博客的那段时间在网上认识一个做优化的朋友,聊天的时候她给我看了一个最近自己的排名的学习日语网站,当时稍微看了下,注意了后台是一个网站的后台套用的.不知道过了一段的时间,至于有多久也没有记得了,我的一个做网站的朋友给我看了近期一个跟他做的网站相关行业的B2B网站,是一个新站.我朋友看到这个新站的排名超过了他一心打造的老站,心里恼火.当时也去