onthink前台导航调用分类不调用导航
1、--写在了indexController中get_nav_cate()方法
//导航调用分类的title---IndexControl中加调用导航方法 生成分类树
public function get_nav_cate(){
//-------------导航------
$cate = M('Category')->where(array('status'=>1))->field('id,title,pid,name,allow_publish')->order('pid,sort')->select();
$cate = list_to_tree($cate); //生成分类树
//获取分类id
$cate_id = I('param.cate_id');
$this->cate_id = $cate_id;
//是否展开分类
$hide_cate = false;
if(ACTION_NAME != 'recycle' && ACTION_NAME != 'draftbox' && ACTION_NAME != 'mydocument'){
$hide_cate = true;
}
//生成每个分类的url
foreach ($cate as $key=>&$value){
$value['url'] = 'Article/index?cate_id='.$value['id'];
if($cate_id == $value['id'] && $hide_cate){
$value['current'] = true;
}else{
$value['current'] = false;
}
if(!empty($value['_child'])){
$is_child = false;
foreach ($value['_child'] as $ka=>&$va){
$va['url'] = 'Article/index?cate_id='.$va['id'];
if(!empty($va['_child'])){
foreach ($va['_child'] as $k=>&$v){
$v['url'] = 'Article/index?cate_id='.$v['id'];
$v['pid'] = $va['id'];
$is_child = $v['id'] == $cate_id ? true : false;
}
}
//展开子分类的父分类
if($va['id'] == $cate_id || $is_child){
$is_child = false;
if($hide_cate){
$value['current'] = true;
$va['current'] = true;
}else{
$value['current'] = false;
$va['current'] = false;
}
}else{
$va['current'] = false;
}
}
}
}
$this->assign('nodes', $cate);
$this->assign('cate_id', $this->cate_id);
}
//如果其它页面用到 可以用R()方法引过去--可以写到公共文件 直接调用
R('Index/get_nav_cate');//调用导航
//前端调用
<volist name="nodes" id="no"> <!-- 子导航 --> <li><a href="/home/{$no.name}/index.html">{$no.title}</a> <foreach name="no['_child']" item="v"><dl><dt><a href="index.php?s=/home/article/index/category/{$v.id}">{$v.title}</a></dt></dl></foreach> </li> </volist>