导航菜单 | Navigation menu

舒彬琪编辑于2019-09-21158 人浏览64 人点赞

导航菜单列表标签

适用范围:全站任意地方均可使用

标签作用:用于调导航菜单栏目列表,对应后台的“基础内容>内容栏目”

1、导航菜单列表

{pboot:nav}

<a href="[nav:link]">[nav:name]</a>

{/pboot:nav}

控制参数:

num=* 数量,非必填,用于控制输出的数量

parent=* 父菜单编码,非必填,用于控制输出列表的父菜单编码,默认0,即从一级菜单开始输出

parent={sort:pcode} 可用于输出当前栏目的同级菜单

parent={sort:scode} 可用于输出当前栏目的子菜单

parent={sort:tcode} 可用于输出当前栏目顶级菜单的子菜单

2、可使用的列表标签

[nav:n]序号,从0开始
[nav:i]序号,从1开始
[nav:pcode]父栏目编码
[nav:scode]当前栏目编码
[nav:name]栏目名称
[nav:subname]栏目副名称
[nav:link]栏目链接
[nav:type]栏目类型,1单页、2列表
[nav:outlink]后台设置的跳转链接
[nav:listtpl]列表页模板
[nav:contenttpl]详情页模板
[nav:ico]栏目缩略图
[nav:pic]栏目大图
[nav:keywords]栏目关键字
[nav:description]栏目描述
[nav:soncount]当前栏目子栏目的数量,无子栏目时为0
[nav:rows]输出栏目下内容数量(V1.3+)

3、常见使用示例

高亮菜单

使用判断语句:{pboot:if('[nav:scode]'=='{sort:tcode}')}class="active"{/pboot:if}

首页特殊用法:{pboot:if(0=='{sort:scode}')}class="active"{/pboot:if}

菜单嵌套

二级嵌套

{pboot:nav}
    <a href= "[nav:link]">[nav:name]</a>
    {pboot:if([nav:soncount]>0)}
    {pboot:2nav parent=[nav:scode]}
        <a href= "[2nav:link]">[2nav:name]</a>
    {/pboot:2nav}
    {/pboot:if}
{/pboot:nav}

三级嵌套

{pboot:nav}
    <a href= "[nav:link]">[nav:name]</a>
    {pboot:if([nav:soncount]>0)}
    {pboot:2nav parent=[nav:scode]}
        <a href= "[2nav:link]">[2nav:name]</a>
        {pboot:if([nav:soncount]>0)}
        {pboot:3nav parent=[2nav:scode]}
            <a href= "[3nav:link]">[3nav:name]</a>
        {/pboot:3nav}
        {/pboot:if}
    {/pboot:2nav}
    {/pboot:if}
{/pboot:nav}

如果有更多级别,以此类推,使用数字依层级套用,理论上不限级调用

特别说明

可以看到本页面比官方文档多了一行判断语句,这样是为了让循环时没有多级菜单的导航不产生冗余代码

贡献:工具作者舒彬琪,QQ:1651978720

具体代码如下

{pboot:if([nav:soncount]>0)}
    多级链接内容
{/pboot:if}
 阅 158