本实例解决问题
- 一级、二级导航栏目loop循环输出的实现方法;
- 判断是否为当前栏目 - 并高亮显示当前栏目的
{if}{/if}
方法设置; - 栏目“是否在导航显示”的设置含义与效果差别;
下 面 通 过 代 码 演 示 ,来 一 一 讲 解 一 番:
1. 主要代码
<header>
<!--menu begin-->
<div class="menu">
{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}
<nav class="nav" id="topnav">
<h1 class="logo"><a href="{siteurl($siteid)}/">某某某某</a></h1>
<li><a href="{siteurl($siteid)}/">网站首页</a> </li>
{loop $data $r}
<li><a href="{$r[url]}" {if $r['catid'] == $catid || $CATEGORYS[$CAT[parentid]][catid]==$r['catid']} class="active" {/if}>{$r[catname]}</a>
{if $r[arrchildid]}
{pc:content action="category" catid="$r[catid]" num="15" siteid="$siteid" order="listorder ASC" return="data2"}
<ul class="sub-nav">
{loop $data2 $v}
<li><a href="{$v[url]}">{$v[catname]}</a></li>
{/loop}
</ul>
{/pc}
{/if}
</li>
{/loop}
</nav>
{/pc}
</div>
<!--menu end-->
</header>
通过上述代码,我们可以猜到:
- 用
{if $r[arrchildid]} {/if}
判断一级导航有没有二级子栏目; - 用
{if $r['catid'] == $catid || $CATEGORYS[$CAT[parentid]][catid]==$r['catid']} {/if}
判断是否为当前栏目并高亮状态; - 凡是通过
上述代码一次性loop出来的导航栏目
,后台在栏目的“是否在导航显示” 属性设置为 “否”
,则页面导航效果将不再显示该栏目。
2. 效果图
以上就是关于“ phpcmsV9一、二级导航栏目loop循环输出、当前高亮显示 ” 的全部内容。