DTCMS自定义标签,获取所有栏目以及获得二级子栏目导航

本文介绍如何在DTcms中实现多级栏目导航功能,包括获取栏目列表及子栏目的方法。通过重载get_category_list方法并使用特定参数,可以获取到指定父类别ID和频道ID下的所有子栏目。

取得二级栏目

DTcms.Web.UI\Label\category.cs中

get_category_child_list

返回当前所有子栏目

DTcms.Web.UI\Label\category.cs中,添加get_category_list的重载方法

  /// <summary>
        /// 返回类别列表
        /// </summary>
        /// <param name="parent_id">父类别ID</param>
     /// <param name="channel_id">频道ID</param>
/// <returns>DataTable</returns> protected DataTable get_category_list(int parent_id, string channel_id) { return new BLL.article_category().GetList(parent_id, int.Parse(channel_id)); }

需要注意的参数为string类型的,转化为int型的就可以

  <ul id="navigation">
    <li><a href="<%linkurl("index")%>">网站首页</a></li>
   <%set DataTable categorylist=get_category()%>
      <%loop category categorylist%>
         <li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)">
         <a href="/{category[name]}_index.html">{category[title]}</a>
         <ul>
      <%set DataTable arc_categorylist=get_category_list(0,{category[id]})%>
         <%loop arc_category arc_categorylist%>
        <li> <a href="/{category[name]}/list-{arc_category[id]}.html">{arc_category[title]}</a></li>
         <%/loop%>
         </ul>
         </li>
      <%/loop%>
      </ul>

链接地址看后台设置,灵活调用

 <script type="text/javascript">
     function displaySubMenu(li) {
         var subMenu = li.getElementsByTagName("ul")[0];
         subMenu.style.display = "block";
     }
     function hideSubMenu(li) {
         var subMenu = li.getElementsByTagName("ul")[0];
         subMenu.style.display = "none";
     }
</script>

 

最终效果

 

转载于:https://www.cnblogs.com/qigege/p/4947793.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值