当前位置:主页 > 知识大宝库 > 前端教程 >

dedecms获取任意栏目N级列表链接树形菜单

来源:未知  作者:南宁网站建设  日期:2015-08-05 21:11

在网站根目录下\include\channelunit.func.php文件底部添加如下代码: 
 
 
/*树形栏目,获取二级栏目,三级栏目,四级栏目列表/ 
function getProductTree($typeid) 
$linkList = ""; 
$dsql = new DedeSql(false); 
$dsql->SetQuery("select ID,typedir,typename,isdefault from dede_arctype where reID = '$typeid' order by sortrank"); 
$dsql->Execute(); 
while($row=$dsql->GetObject()) 
   $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row-
 
>namerule2,$row->moresite,$row->siteurl,$row->sitepath); 
   $linkList .= "\n<div class=\"firsttype\"><a href=\"$typelink\"><b>".$row->typename."</b></a></div>\n\n"; 
   $linkList .= getSonClass($row->ID); 
$dsql->Close(); 
return $linkList; 
//获得小类栏目链接 
function getSonClass($parentid) 
$linkList = ""; 
$dsql = new DedeSql(false); 
$dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); 
$dsql->Execute($parentid); 
while($row=$dsql->GetObject($parentid)) 
   $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row-
 
>namerule2,$row->moresite,$row->siteurl,$row->sitepath); 
   $linkList .= "<li class=\"secondtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; 
   $linkList .= getSonClass2($row->ID); 
return $linkList; 
function getSonClass2($parentid) 
$linkList = ""; 
$dsql = new DedeSql(false); 
$dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); 
$dsql->Execute($parentid); 
while($row=$dsql->GetObject($parentid)) 
   $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row-
 
>namerule2,$row->moresite,$row->siteurl,$row->sitepath); 
   $linkList .= "<li class=\"thirdtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; 
   $linkList .= getSonClass3($row->ID); 
return $linkList; 
function getSonClass3($parentid) 
$linkList = ""; 
$dsql = new DedeSql(false); 
$dsql->SetQuery("Select ID,typedir,typename,isdefault From dede_arctype where reID='$parentid' order by sortrank"); 
$dsql->Execute($parentid); 
while($row=$dsql->GetObject($parentid)) 
   $typelink = GetTypeUrl($row->id,MfTypedir($row->typedir),$row->isdefault,$row->defaultname,$row->ispart,$row-
 
>namerule2,$row->moresite,$row->siteurl,$row->sitepath); 
   $linkList .= "<li class=\"fourthtype\"><a href=\"$typelink\">".$row->typename."</a></li>\n"; 
return $linkList; 
/*树形栏目*/ 
 
 
2、在模板里用 
{dede:channel function='getProductTree(2)'}{/dede:channel}  
调用即可。这里 getProductTree(2)中的 2 是产品展示的栏目ID。如果你的是其他的,请修改相应的数字。

本文地址:http://g9gx.com/zhishi/jianzhan/46.html 在线咨询

上一篇:网页性能优化教程之精简合并 css、js资源文件

下一篇:DEDECMS限制指定字段只有会员才能查看

关注&咨询
谷九建站