从dedecms官网论坛找到个合适的解决方案,打开include/inc/inc_fun_SpGetArcList.php ,将
for($i=0;$i<$ridnum;$i++){ if($tpsql=="") $tpsql .= " And ( (".TypeGetSunID($reids[$i],$dsql,'arc')." Or arc.typeid2='".$reids[$i]."') "; else $tpsql .= " Or (".TypeGetSunID($reids[$i],$dsql,'arc')." Or arc.typeid2='".$reids[$i]."') "; }
替换为:
for($i=0;$i<$ridnum;$i++){ if($tpsql=="") $tpsql .= " And (".TypeGetSunID($reids[$i],$dsql,'arc'); else $tpsql .= " Or ".TypeGetSunID($reids[$i],$dsql,'arc'); }
速度快好几倍,原理就是,副栏目不用参与了,极大的提高了运行速度。
不过如果大家的 副栏目 使用的比较多,不建议用。