C语言学习网

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

发表于:2022-08-12 作者:安全数据网编辑
编辑最后更新 2022年08月12日,DedeCms如何获取任意栏目N级列表链接树形菜单?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!DedeCms怎么获

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\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; }/*树形栏目补充*/

    2、在模板里用

    {dede:channel function='getProductTree(2)'}{/dede:channel} 

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

    感谢各位的阅读!看完上述内容,你们对DedeCms如何获取任意栏目N级列表链接树形菜单大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。

    0