dedecms中的文章在选择幅栏目后,在其对应的幅栏目列表中可以显示该文章,但在arclist 标签中却无法显示该文章,网上找了很多,解决办法都一样,但写法却写错了,导致arclist标签在使用了flag属性时会失效的问题。修正后的写法如下:
打开/include/taglib/arclist.lib.php,代码约位于301-302行(我目前用的DedeCMS最新版 5.7 UTF-8),查找以下两行代码:
Copy to Clipboard引用的内容:[www.dede58.com]
if($CrossID==”) $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’)';else $orwheres[] = ‘ arc.typeid IN (‘.GetSonIds($typeid).’,’.$CrossID.’)';
将其替换成以下代码:
Copy to ClipboardLiehuo.Net Codes引用的内容:[www.dede58.com] if($CrossID==”) { $typeid2like = ” ‘%,”.GetSonIds($typeid).”,%’ “; $orwheres[] = ” (arc.typeid IN (“.GetSonIds($typeid).”) OR CONCAT(‘,’, arc.typeid2, ‘,’) LIKE $typeid2like ) “; }else{ $typeid2like = ” ‘%,”.GetSonIds($typeid).”,”.$CrossID.”,%’ “; $orwheres[] = ” (arc.typeid IN (“.GetSonIds($typeid).”,”.$CrossID.”) OR CONCAT(‘,’, arc.typeid2, ‘,’) LIKE $typeid2like) “; } |
OK,这样就改完了,保存后如果你是生成静态的,请生成相关的。如果是动态的,请更新系统缓存。然后就可以看到效果了。
适合单栏目调用,多栏目调用暂时实现不了,如果哪位同志实现了的,可以完善下哦,方便大家!
例如:{dede:arclist typeid=’4′},这里的typeid只能设置一个栏目的id,如果设置超过两个就实现不了上面的功能了,忘高手补充下。
1. 资源都是经过站长或作者收集测试修改后发布分享。如若转载请在文内以超链形式注明狐狸库文章出处,谢谢合作!
2. 本站除原创内容,其余所有内容均收集自互联网,仅限用于学习和研究目的,本站不对其内容的合法性承担任何责任。如有版权内容,请通知我们或作者删除,其版权均归原作者所有,本站虽力求保存原有版权信息,但因众多资源经多次转载,已无法确定其真实来源,或已将原有信息丢失,所以敬请原作者谅解!
3. 本站用户所发布的一切资源内容不代表本站立场,并不代表本站赞同其观点和对其真实性负责,若您对本站所载资源作品版权归属存有异议,请留言附说明联系邮箱,我们将在第一时间予以处理 ,同时向您表示歉意!为尊重作者版权,请购买原版作品,支持您喜欢的作者,谢谢!
4. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客如有发现请立即向站长举报;本站资源文件大多存储在云盘,如发现链接或图片失效,请联系作者或站长及时更新。
请登录后查看评论内容