找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 700|回复: 0

织梦DEDECMS网站调用任意栏目多级列表树形菜单的方法

[复制链接]
发表于 2012-4-18 10:45:00 | 显示全部楼层 |阅读模式
织梦DedeCMS网站调用任意栏目多级列表树形菜单的方法:
我们找到\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".$row->typename."\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 .= "".$row->typename."\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 .= "".$row->typename."\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 .= "".$row->typename."\n";
}
return $linkList;
}
/*树形栏目补充说明完毕*/
然后我们在织梦模板里面使用下面的标签调用
{dede:channel function='getProductTree(5)'}{/dede:channel}
用这个调用就可以了。这里getProductTree(5)中的数字 5 是调用的栏目ID号。如果是要调用其他的栏目,直接修改成相应的栏目ID号就可以了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|要学吧论坛

GMT+8, 2026-1-24 01:20 , Processed in 0.376890 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表