偶然有一次用到了DEDECMS的副欄目,發布文章時勾選了一些副欄目,但是在前臺發現DEDECMS只有在列表中可以顯示副欄目,arclist標簽中卻無法顯示該文章,經過查看了 arclist.lib.php 文件后,找到了修改的方法。
首先打開/include/taglib/arclist.lib.php,由于我現在在用的是V5.7 SP1,找到代碼大約位于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).") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%' )"; |
| else $orwheres[] = " (arc.typeid in (".GetSonIds($typeid).",".$CrossID.") or arc.typeid2 in (".GetSonIds($typeid).",".$CrossID.") or CONCAT( ',', arc.typeid2, ',' ) LIKE '%,".$typeid.",%')"; |
付上網盤下載:http://pan.baidu.com/share/link?shareid=92059&uk=353171678
替換完成后,保存! 然后更新下系統緩存。如果你是生成靜態的,請在重新生成一次,基本上就可以了。刷新頁面就可以看到效果了,希望可以幫到正常為此困惑的你~
新聞熱點
疑難解答