基本使用
此输出方式全局可以使用,只要是极致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']}