web技术

联系方式

web技术主页 > web技术 >

DedeCms获取栏目列表菜单的方法

发布时间:2018-11-05 编辑:admin

DedeCms获取栏目列表菜单的方法

想给自己的网站添加一个网站导航栏目,大家知道,这需要我们调用各个栏目的菜单,而且是多级菜单。织梦模板好像没有提供这一标签,只好动手进行尝试,经过一些努力,还真得实现了,方法如下:

首先,请大家在\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 .= " <div class=\"firsttype\"><a href=\"$typelink\"><b>".$row->typename."</b></a></div> ";
$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> ";
$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> ";
$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> ";
}
return $linkList;
}
/*树形栏目补充*/
----------------------------------------------------------------------------
2、在模板里用
{dede:channel function='getProductTree(2)'}{/dede:channel} 
调用即可。这里getProductTree(2)中的 2 是产品展示的栏目ID。如果你的是其他的,请作相应修改。

最后,我还要提示大家注意一下:本文中的修改方法,只适用于织梦模板默认的表前缀,如果你安装的时候修改了,请注意修改。

http://www.bkjia.com/dedecms/1274086.htmlwww.bkjia.comtruehttp://www.bkjia.com/dedecms/1274086.htmlTechArticleDedeCms获取栏目列表菜单的方法 想给自己的网站添加一个网站导航栏目,大家知道,这需要我们调用各个栏目的菜单,而且是多级菜单。织...

本文源自: 环亚国际

Copyright © 2005-2017 http://www.makilaro.com 环亚国际_环亚国际娱乐_环亚国际娱乐平台_腾讯财经版权所有 环亚国际_环亚国际娱乐_环亚国际娱乐平台_腾讯财经