我们在做网站的时候经常会遇到一些特殊的导航,比如导航带高亮,二级导航镶嵌下拉等等。当有这些的时候就找不到方法了,默认是无法输出的,今天呢蜀戎网就给大家讲解一下,如何来写这种导航标签。

一级栏目调用例子:


<ul>

{pboot:nav num=10 parent=0}

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

{/pboot:nav}

</ul>


二级栏目调用例子:


<ul>

{pboot:nav num=10 parent=0}

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

{pboot:if([nav:soncount]>0)}

<ul>

{pboot:2nav num=10 parent=[nav:scode]}

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

{/pboot:2nav}

</ul>

{/pboot:if}

</li>

{/pboot:nav}

</ul>



三级导航栏调用例子:


<ul>

{pboot:nav num=10 parent=0}

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

{pboot:if([nav:soncount]>0)}

<ul>

{pboot:2nav num=10 parent=[nav:scode]}

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

{pboot:3nav num=10 parent=[2nav:scode]}

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

{/pboot:3nav}

{/pboot:2nav}

</ul>

{/pboot:if}

</li>

{/pboot:nav}

</ul>



三级ul弹出导航栏调用例子:(2级if嵌套)


<ul>

{pboot:nav num=10 parent=0}

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

{pboot:if([nav:soncount]>0)}

<ul>

{pboot:2nav num=10 parent=[nav:scode]}

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

{pboot:2if([2nav:soncount]>0)}

<ul>

{pboot:3nav num=10 parent=[2nav:scode]}

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

{/pboot:3nav}

</ul>

{/pboot:2if}

</li>

{/pboot:2nav}

</ul>

{/pboot:if}

</li>

{/pboot:nav}

</ul>



高亮方法:

{pboot:if('[nav:scode]'=='{sort:tcode}')}class="on"{/pboot:if}


或者


{pboot:if(0=='{sort:scode}')}class='active'{/pboot:if}


栏目列表调用,如头部的导航条的实现:


{pboot:nav num=10 parent=0}

[nav:i]  栏目序号

[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+)

{/pboot:nav}


调节参数:


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

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

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

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

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


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:2nav parent=[nav:scode]}

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

  {/pboot:2nav}

{/pboot:nav}

三级嵌套

{pboot:nav}                   

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

  {pboot:2nav parent=[nav:scode]}

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

    {pboot:3nav parent=[2nav:scode]}

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

    {/pboot:3nav}

  {/pboot:2nav}

{/pboot:nav}

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


相关文章