栏目导航

基本使用

此输出方式全局可以使用,只要是极致CMS系统内,都可以这么使用!

{$classtypedata[$id][$str]}  $id:栏目的ID   $str:栏目对应的字段参数   如:针对于栏目ID等于1的栏目,我们可以这样输出以下内容:   栏目名:{$classtypedata[1]['classname']} 模块标识:{$classtypedata[1]['molds']} 缩略图:{$classtypedata[1]['litpic']} 当前栏目URL:{$classtypedata[1]['url']} 描述:{$classtypedata[1]['description']} 关键词:{$classtypedata[1]['keywords']} 内容:{$classtypedata[1]['body']} 列表输出条数:{$classtypedata[1]['lists_num']} 栏目评论数:{$classtypedata[1]['comment_num']} 上级栏目ID:{$classtypedata[1]['pid']} 上级栏目名:{$classtypedata[$classtypedata[1]['pid']]['classname']} 上级栏目URL:{$classtypedata[$classtypedata[1]['pid']]['url']} 判断是否有下级:{if($classtypedata[1]['haschild'])}有下级{else}无下级{/if}

导航栏

判断是否首页,输出高亮代码 <li><a class="a1 {if(!isset($type))}color{/if}" href="/">首页</a></li> {foreach $classtypedata as $v}  判断输出可显示的栏目 {if($v['isshow']==1)} 输出一级栏目 {if($v['pid']==0)}   <li> 判断是否当前栏目,输出高亮代码 <a class="a1 {if(isset($type) && in_array($type['id'],$v['children']['ids']))}color{/if}" href="{$v['url']}">{$v['classname']}</a> 判断是否有下级,输出下级分类     {if($v['haschild'])}     <ul>         {foreach $v['children']['list'] as $vv}         {if($vv['isshow']==1)}         <li><a href="{$vv['url']}">{$vv['classname']}</a></li>         {/if}         {/foreach}     </ul>     {/if} </li> {/if} {/if} {/foreach}

特别提醒:如果要输出二级以上的子栏目,需要将上面的 $v['children'] 换成 $classtypedata[$v['id']]['children']
2.0+ 和 1.9.x 支持无限级,可以直接用 $v['children']

输出二级三级

推荐使用

{foreach $classtypedata as $v}     {foreach $v['children']['list'] as $vv}             {foreach $classtypedata[$vv['id']]['children']['list'] as $vvv}             //三级以上输出,借助 $classtypedata来获取下级数据             {/foreach}              {/foreach} {/foreach}

直接使用系统内置(系统配置中的栏目全局递归不能关闭,否则失效)

{foreach $classtypedata as $v}     {foreach $v['children']['list'] as $vv}             {foreach $vv['children']['list'] as $vvv}             //三级递归有效,可以一直递归写下去             {/foreach}              {/foreach} {/foreach}

使用loop输出栏目

{loop table="classtype" pid="0" isshow="1" as="v"} <li> 判断是否当前栏目,输出高亮代码 <a class="a1 {if(isset($type) && in_array($type['id'],$classtypedata[$v['id']]['children']['ids']))}color{/if}" href="{$v['url']}">{$v['classname']}</a> 判断是否有下级,输出下级分类     {if($classtypedata[$v['id']]['haschild'])}     <ul>         {foreach $classtypedata[$v['id']]['children']['list'] as $vv}         <li><a href="{$vv['url']}">{$vv['classname']}</a></li>         {/foreach}     </ul>     {/if} </li> {/loop}

导航模块

导航模块是一个自助分配的导航,可以从后台配置导航,不跟随栏目来输出导航

假设导航ID为1

{foreach $jznav[1] as $v} 导航名称:{$v['title']} 导航相关栏目ID:{$v['tid']} 导航打开方式:{$v['target']} 导航链接:{$v['url']} 当前导航判断:{if(isset($type) && in_array($type["id"],$classtypedata[$v['tid']]["children"]["ids"]))}当前{/if} {/foreach}

ul格式输出

<ul> <li><a class="{if(!isset($type))}curr{/if}" href="/">首页</a></li> {foreach $jznav[1] as $v} <li><a href="{$v['url']}" class="{if(isset($type) && in_array($type["id"],$classtypedata[$v['tid']]["children"]["ids"]))}curr{/if}" target="{$v['target']}">{$v['title']}</li> {/foreach} </ul>

判断是否首页

{if($ishome)} // 1.9.3+新增 首页 {/if} {if(!isset($type))} 首页 {/if}

隐藏栏目.html后缀

隐藏.html功能是1.7+版本新增的高级功能
如:http://www.jizhicms.cn/lanmu/abc.html 隐藏后:http://www.jizhicms.cn/lanmu/abc/

操作方法

系统配置-->高级配置-->隐藏.html 提交 刷新前台页面,那么链接就会改变了

输出栏目下级

输出当前栏目下级,如果没有下级则输出同级(非全部下级)

{if($classtypedata[$type['id']]['haschild'])}   {foreach $classtypedata[$type['id']]['children']['list'] as $v}   {$v['classname']}   {/foreach}   {else}   {foreach $classtypedata as $v}   {if($type['pid']==$v['pid'])}   {$v['classname']}   {/if}   {/foreach}   {/if}

输出栏目上级

仅输出当前栏目上级

栏目名:{$classtypedata[$type['pid']]['classname']} 栏目URL:{$classtypedata[$type['pid']]['url']} 栏目简介:{$classtypedata[$type['pid']]['description']} 栏目缩略图[banner]:{$classtypedata[$type['pid']]['litpic']}

面包屑导航

简单使用可以直接使用

{$positions}

自定义输出面包屑

#从面包屑最上层开始正序输出栏目 {foreach $positions_data as $v} 对应的是栏目内容的输出,就跟导航栏是一样的 栏目名:{$v['classname']} 栏目链接:{$v['url']} {/foreach}

获取当前栏目最顶级栏目

{php  $topclass = array_shift($positions_data) /}

这里可以直接使用 {$topclass[$str]} 输出对应的栏目内容 如:栏目名 {$topclass['classname']}