修正Dedecms未审核的文档显示的的问题

2019-10-24,,

关于未审核的文章也发布出来了,我从网上查看了一下版主说 arclist掉文章条件是 $orwheres[] = ' arc.arcrank >-1 '; 对呀 我感觉应该调用不出来 我打印了一下SQL 语句为

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 typeid in (275) or typeid2 in (275) And arc.arcrank >-1 order by arc.sortrank desc limit 0,5

 

 

看似没有什么问题 也可以顺利执行 错就错在了 ADN 的优先级高于OR的优先级 后面的那个条件只可以给typeid2 in (275) 用关联不到OR前面的typeid in (275) 部分

 

废话说了半天了 下面来教怎么修改taglib目录下面的arclist.lib.php文件找到196行左右修改为即可

$orwheres[] = '( typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')'.')';

else

$orwheres[] = '( typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')'.')';

找到226行将其修改为

$orwheres[] = ' arc.arcrank >-1 ';

《修正Dedecms未审核的文档显示的的问题.doc》

下载本文的Word格式文档,以方便收藏与打印。