首页 > 网站建设 > 织梦教程 > dedecms获取任意栏目N级列表链接树形菜单
2014
11-15

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

在\include\channelunit.func.php文件底部添加如下代码:
—————————————————–

/*树形栏目补充,获取二级,san级,四级栏目列表/
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。如果你的是其他的,请作相应修改。

最后编辑:
作者:xindao
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。