DeDeCMS 新手常见问题

3.1lit最新版当一级栏目为最终列表栏目时,使列表显示其下级栏目的文章的修改

include/inc_arclist_view.php80行:$addSql .= " And (typeid=’".$this->TypeID."’ or typeid2=’".$this->TypeID."’) ";

更改为://增加的,用来解决上级列表调用不出下级列表的问题 $ssid = TypeGetSunID($this->TypeID,$this->dsql); $ssid2 = str_replace(‘typeid’,’typeid2′,$ssid); //结束增加的 $addSql .= " And (typeid=’".$this->TypeID."’ or ".$ssid." or typeid2=’".$this->TypeID."’ or ".$ssid2.") ";//本句也已修改上面这部分用来解决分页问题

include/inc/inc_fun_SpGetArcList.php70行开始:if($ridnum>1){ $tpsql = ""; for($i=0;$i<$ridnum;$i ){ if($tpsql=="") $tpsql .= " And (".TypeGetSunID($reids[$i],$dsql,’arc’); else $tpsql .= " Or ".TypeGetSunID($reids[$i],$dsql,’arc’); } $tpsql .= ") "; $orwhere .= $tpsql; unset($tpsql); } else{ $orwhere .= " And ".TypeGetSunID($typeid,$dsql,’arc’); }

更改为:if($ridnum>1){ $tpsql = ""; for($i=0;$i<$ridnum;$i ){ if($tpsql=="") { //开始修改文章第二栏目调用问题 $ssid = TypeGetSunID($reids[$i],$dsql,’arc’); $ssid2 = str_replace(‘typeid’,’typeid2′,$ssid); $tpsql .= " And (".$ssid." or ".$ssid2;} else { $tpsql .= " Or ".TypeGetSunID($reids[$i],$dsql,’arc’); $tpsql .= str_replace(‘typeid’,’typeid2′,$tpsql);} } $tpsql .= ") "; $orwhere .= $tpsql; unset($tpsql); } else{ $ssid = TypeGetSunID($typeid,$dsql,’arc’); $ssid2 = str_replace(‘typeid’,’typeid2′,$ssid); $orwhere .= " And (".$ssid." or ".$ssid2.") ";//结束修改文章第二栏目调用问题 }

此部分用来解决调用下级栏目文章列表问题

替换的代码我写的很粗糙,可以暂时先用着,等官方的解决方案出来后再替换

在 include/inc_arclist_view.php还要改一处:

//获得一个单列的文档列表下

//类别ID的条件 $orwhere .= " And (dede_archives.typeid=’".$this->TypeID."’ or dede_archives.typeid2=’".$this->TypeID."’) ";

改为:

//类别ID的条件 $ssid = TypeGetSunID($this->TypeID,$this->dsql);

$orwhere .= " And (dede_archives.typeid=’".$this->TypeID."’ or ".$ssid." or dede_archives.typeid2=’".$this->TypeID."’) ";

否则有页面没有列表内容,因为80行是Select count(*)…..

关于那个栏目路径有个{cmspath}首先说一下{cmspath}的意思,,打开后台"系统配置参数"可以看到第二项,DedeCms安装目录: 这个就是{cmspath}所解析出来的路径,

年轻是胜利的一半。

DeDeCMS 新手常见问题

相关文章:

你感兴趣的文章:

标签云: