>[info]RGCMS的栏目调用简单方便,灵活性强,支持无限级
## **栏目调用**
标签:`{rg:nav 参数名称="参数值"}{/rg:nav}`
**参数列表**
|参数(?为可选参数)|默认值|使用示例|解释|
|---|---|---|---|
|?pid|默认当前栏目ID|pid="5"或 pid="$nav_id" 或pid="$nav['id']"|上级栏目ID|
|?group||group="G1"|根据栏目分组标识进行调用|
|?model||model="news"|根据模型标识调用栏目|
|?id||id="1,2,3,4" <p style="color:orange">1.12新增:id=":get_navids('G1')"</p>|根据栏目ID进行调用|
|?eid||eid="5,6,7,8"<p style="color:orange">1.12新增:eid=":get_navids('G1')"</p>|排除特定ID的栏目|
|?empty||empty="无数据"|无结果时提示的文本|
|?where||where="id > 10"|根据条件进行筛选|
|?order|order asc,id desc|order="id asc"|排序规则|
|?status|1(默认调用开启的栏目)|status="0"|调用开启或关闭的栏目|
|?key|i|key="y"|循环体内的计数变量,如{$i}从1开始计数|
|?name|自定义(不可为nav)|name="nav2"|调用二级栏目或三级等,自定义的变量名称|
|?limit|不限|limit="10"|调用数量|
|?site|当前站点ID|site="1"|站点ID|
>[warning]pid参数如果需要调用上一级的ID,必须使用数组形式,如:pid='$nav["id"]'
注意:**pid、group、model、id最多只能选择一个调用**
>[success]童鞋们举栗子了:
```
调用当前站点所有一级栏目,按照默认排序规则排序
<ul>
<li {if $nav_id==0}class="active"{/if}>
<a href="/">首页</a>
</li>
{rg:nav}
<li {if $nav.id==$nav_top_id} class="active"{/if}>
<a href="{$nav.url}" {$nav.target}>{$nav.name}</a>
</li>
{/rg:nav}
</ul>
解释:
1. {if $nav.id==$nav_top_id}**{/if} 就是如果当前循环到的栏目ID等于当前页面的顶层栏目ID时显示高亮状态
2. 如果写成这样{if $nav.id==$nav_id}**{/if} 就是如果当前循环到的栏目ID等于当前页面的ID时显示高亮状态
3. {$nav.url} 是当前栏目的URL
4. {$nav.*} *代表后台栏目中对应的字段名称,以及自定义的栏目扩展字段名称
```
```
二级栏目调用,这个稍微加深点了
<ul>
<li {if $nav_id==0}class="active"{/if}>
<a href="/">首页</a>
</li>
{rg:nav limit="5" order="order asc,id desc"}
<li {if $nav.id==$nav_top_id} class="active"{/if}>
<a href="{$nav.url}" {$nav.target}>{$nav.name}</a>
{if $nav.child>0}
<div>
{rg:nav pid='$nav["id"]' name='nav2'}
<a href="{$nav2.url}" {$nav2.target}>{$nav2.name}</a>
{/rg:nav}
</div>
{/if}
</li>
{/rg:nav}
</ul>
解释:
1. {if $nav.child>0}**{/if} 判断是否有子栏目
2. 每一级的name参数必须定义不同的变量名,不要与其他变量名有冲突
```
```
调用栏目分组
<ul>
{rg:nav group="G1" limit="4" order="order asc"}
<li>
<a href="{$nav.url}" {$nav.target}>{$nav.name}</a>
{if $nav.child}
<div>
{rg:nav pid='$nav["id"]' name='nav2'}
<a href="{$nav2.url}" {$nav2.target}>{$nav2.name}</a>
{/rg:nav}
</div>
{/if}
</li>
{/rg:nav}
</ul>
解释:
1. group参数值为后台栏目分组中,设定的分组标识
2. 当参数中存在group参数时,pid参数失效
```
```
左侧分类,调用当前栏目顶级分类
<ul>
{rg:nav pid="$nav_top_id"}
<li>
<a href="{$nav.url}" {$nav.target}>{$nav.name}</a>
</li>
{/rg:nav}
</ul>
解释:
$nav_top_id 为当前栏目顶级分类ID,$nav_id 为当前栏目ID
```
```
调用指定的栏目
<ul>
{rg:nav id="11,12,13"}
<li>
<a href="{$nav.url}" {$nav.target}>{$nav.name}</a>
</li>
{/rg:nav}
</ul>
解释:
此时,将调用ID为11,12,13的栏目,并循环输出信息
```