织梦dedecms使用weight排序无效的解决方法

织梦dedecms使用weight排序无效的解决方法,第1张

织梦dedecms使用weight排序无效的解决方法

本文的重点是大家详细介绍了智盟dedecms中权重排序失败的解决方案,并对最底层代码中的sql语句和逻辑解决方案中的相关bug进行了有目的的修改。对dedecms的二次开发有一定的参考价值,朋友们一定要参考。

本文通过案例介绍了Dreamweaverdedecms中应用权重排序失败的解决方案。分享给大家参考。具体做法如下:

Dedecms5.7有一个重量排序的bug。下面是如何解决减肥失败的一步一步的解决方法。

所涉及的文档是一个includetaglibarclist.lib.php文件,在第570行的顶部和底部:

复制下面的代码:if($isweight=='y')

这行代码真的没用。
复制下面的代码:$orderweight=list_sort_by($orderweight,'weight','ASC');对结果进行排序有什么问题?在得到这个$orderWeight之前,查找文本文档表的句子是:

复制下面的代码:selectarc。*,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`arcLEFTJOIN`dede_arctype`TPONarc.typeid=TP.idWHEREarc.typeidIN(29)AND
arc.arcrank>;-1个弧形订单。排名desc
很了不起,不是吗?我们写logo的时候是这样写的:

复制下面的代码:{dede:arclistorderby='weight'typeid='29'isweight='y'
1'titlelen='100'infolen='100'}
原意是数据信息按权重排序,而程序处理是数据库查询按sortrank搜索,具体isweight='y'只有要查找的数据然后排序

所以解决方法比较简单:在这个系统文件的330行处,提出一行按权重排序的解决语句:

复制下面的代码:elseif($orderby='weight')$orderSQL="orderbyarc。重量ASC";

我们再分开一个对列表标识应用权重排序:
复制下面的代码:{dede:listpagesize='10'titlelen='50'orderby='weight'}?[field:textlink/]<;br/>;{/dede:list}

解决方案:

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

2.下面搜索
复制代码:elseif($orderby=="lastpost)){句子,约609行。在这个时间前面按住回车键,插入下面这句话:

复制下面的代码:elseif($orderby=="weight}
3.再次
搜索以下复制代码:if(ereg('hot|click|lastpost',$orderby))句子,并将其更改为:

复制代码:if(ereg('hot|click|)

更改后,保存它们。如果权重排序已经在总体目标中应用,将会看到权重排序已经安装在文本文档目录中。

4.模板激活:
复制以下代码:{dede:arclistrow='10'titlelen='50'orderby='weight'}?[field:textlink/]<;br/>;{/dede:arclist}

期待以上对dedecms企业网站建设有所帮助。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/773212.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存