dedecms系统同一篇文章或图片集发布到多个不同的分类,也就是多个不同的栏目列表里面可以有相同的一篇文章,在很多时候这个功能都很好使的,dede的副栏目它既可以让一篇文档被主栏目调用,也能在副栏目调用,甚至能被多个副栏 目同时调用。 默认情况dede这个功能有问题,我使用的是官方最新版dedecms5.7 sp2,修复方法是打开dedecms跟目录下的文件/include/taglib/arclist.lib.,查找以下代码(约274行左右)
  if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')';

else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';

将上面的代码替换为以下代码: //if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')';

//else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';

if ( $CrossID == '' )//修复副栏目文章在多个栏目下不显示的问题,by 烈火大地~

$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 . ",%')";

这样就可以,更新全站或栏目文档,看看效果。胜象大百科