解决织梦DEDE5.7 tags系列bug(图解步骤)

时间:2022-06-01 22:02:20

网上搜索了一下,很多都没什么太大的作用,最多只是给个简单的思想,而没自己实际解决掉织梦5.7 tags标签显示未审核的BUG。

修复织梦5.7 tags标签字母大写就找不到文章的BUG

第1步:下载织梦5.7根目录下的tags.php并用记事本打开。
:织梦后台有文件管理器可直接修改但是很多网友为了系统安全都把这个插件给卸载了。
成功登录织梦5.7后台,单击 左侧模块>>辅助插件>>文件管理器>>tags.php 直接单击后面的逻辑连接即可。

第2步:把第25行前面添加“//”注销掉此行代码,再下面添加“$tag = FilterSearch(urldecode(strtolower($tag)));”并保存。
解决织梦DEDE5.7 tags系列bug(图解步骤)
:以上是修改后的值,会些PHP的网友都明白strtolower是将字符串转化为小写。当然你感觉不好也可以用strtoupper是全部转换成大写。

第3步:保存并上传到空间,然后到织梦5.7后台单击批量维护下面的更新系统缓存即可。

织梦dede5.7 tags标签显示未审核文章BUG

修改这个这个bug麻烦了一些,我们都可以看到dede5.7 tags列表中不止有不让他只显示已审核这么简单,还有分页算法在里面,所以要改的话,最改也得把分页算法也改掉。

第1步:使用FTP工具下载“网站根目录/include/arc.taglist.class.php”文件并用记事本打开。
:织梦后台有文件管理器可直接修改但是很多网友为了系统安全都把这个插件给卸载了。
成功登录织梦5.7后台,单击 左侧模块>>辅助插件>>文件管理器>>/include/arc.taglist.class.php 直接单击后面的逻辑连接即可。

第2步:打开文件后搜索“>-1”,这时会搜索到两个,这两个也就是本文要说要修改的两个地方,在第一个也就是在129行,前面添加“//”注销掉。
再在此行下面添加“$cquery = "SELECT count(*) AS dd FROM dede_taglist,dede_archives WHERE dede_taglist.tid = '{$this->TagInfos['id']}' AND dede_archives.id=dede_taglist.aid and  dede_archives.arcrank > -1";”并保存。
解决织梦DEDE5.7 tags系列bug(图解步骤)
:上图单击可打开大图,大家可以看的更详细。第128行这里是织梦5.7 tags列表分页算法的SQL语句,官方原来的意思是“查询所有tags表中符合tag标签的总数量”
作者修改后的代码新添加了两个条件
第一个条件“必须tags表中的文章ID和文章表中的ID相同”代码:dede_archives.id=dede_taglist.aid
第二个条件是“文章中必须是审核状态”代码:dede_archives.arcrank > -1

第3步:还是搜索“>-1”,修改第二个搜索到的那行代码,大概是在313行左右,在前面添加“//”注销此行代码。
回车下一行,添加“$this->dsql->SetQuery("SELECT dede_taglist.aid FROM dede_taglist,dede_archives WHERE dede_taglist.tid = '{$this->TagInfos['id']}' AND dede_archives.id=dede_taglist.aid and  dede_archives.arcrank > -1 LIMIT $limitstart,$getrow");”并保存。
解决织梦DEDE5.7 tags系列bug(图解步骤)
:上图单击可打开大图,大家可以看的更详细。作者在这里添加的代码原理就和在第2步已经说很清楚了,这里就不详细解释了,唯一需要说明的是这里加了一个“LIMIT $limitstart,$getrow”,这个是分页用的。

第4步:上传到空间,并成功登录到织梦后台,单击批量维护下的更新系统缓存,更新系统缓存即可。