在《DedeCMS文章页调用所属副栏目名称、链接与自定义图片的方法》一文中,我主要讲了如何在文章页调用当前文章所属的副栏目名称。然而,在最近的一次功能拓展中,因为一篇文章可以与网站的两个栏目都有关联,于是就做了副栏目,但是发现在副栏目的list列表中可以调用出来,而arclist列表中却无法显示。查询了一下,原来需要改动下底层调用文件,其实也很简单,具体方法如下:
打开/include/taglib/arclist.lib.php,查找以下两行代码(大概在第295-296行):
if($CrossID==
”) $orwheres[] =
‘ arc.typeid IN (‘.GetSonIds($typeid).
‘)’;
else $orwheres[] =
‘ arc.typeid IN (‘.GetSonIds($typeid).
‘,’.$CrossID.
‘)’;
修改为:
if($CrossID==
”) $orwheres[] =
‘ (arc.typeid IN (‘.GetSonIds($typeid).
‘) OR arc.typeid2 IN (‘.GetSonIds($typeid).
‘)) ‘;
else $orwheres[] =
‘ (arc.typeid IN (‘.GetSonIds($typeid).
‘,’.$CrossID.
‘) OR arc.typeid2 IN (‘.GetSonIds($typeid).
‘,’.$CrossID.
‘)) ‘;
修改前
修改后
改完后保存,如果你是生成静态的,请生成相关的。如果是动态的,请更新系统缓存。然后就可以看到效果了。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。