我们在做网站的时候经常会遇到一些特殊的导航,比如导航带高亮,二级导航镶嵌下拉等等。当有这些的时候就找不到方法了,默认是无法输出的,今天呢蜀戎网就给大家讲解一下,如何来写这种导航标签。
一级栏目调用例子:
<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}
如果有更多级别,以此类推,使用数字依层级套用,理论上不限级调用