首页 > CMS教程 > DEDECMS > 正文

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

藏色散人
发布: 2019-12-14 10:22:04
原创
1980 人浏览过

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

DedeCms怎么获取任意栏目N级列表链接树形菜单?

DedeCms获取任意栏目N级列表链接树形菜单,小编提示,下边的修改方法,适用于DedeCMS默认的表前缀,如果你安装的时候修改了,请注意修改。

推荐学习:织梦cms

在\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=&#39;$parentid&#39; 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=&#39;$parentid&#39; 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=&#39;$parentid&#39; 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=&#39;getProductTree(2)&#39;}{/dede:channel} 
登录后复制

调用即可。这里getProductTree(2)中的 2 是产品展示的栏目ID。如果你的是其他的,请作相应修改。

以上是DedeCms怎么获取任意栏目N级列表链接树形菜单的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板