ThinkPHP3.2.3中如何显示二级栏目

cidimage.jpg
一、控制器代码如下:

public function index()    
{
     $cate = D('cate');//实例化数据表cate
  /* 方法一*/
     $where['parent_id']=0;
     $cates = $cate->where($where)->select();
     /* 方法二
  $cates = $cate->where(array('parent_id'=>'0'))->select(); 
  */
       $this->assign('cates',$cates);//分配到模板中
        $this->display();   
}

二、在Application/common/common目录下的function.php写一个get_cate_children()函数通过获取父ID来查询所有子栏目函数代码如下:

/*
传入参数为当前栏目的id(即所要调用的子栏目的paren_id)
*/
function get_cate_children($cate_id)
{
    $cate = D('cate');
    //当子栏目的parent_id等于传入的栏目id时,查找出所有子栏目
    $cates = $cate->where(array('parent_id'=>$cate_id))->select();
    return $cates;//返回值
}

三、模板中显示顶级栏目和二级栏目:

<!--顶级栏目-->
<volist name="cates" id="vo">
    <li class="mnav">
        <a href="#" class="">
            <p>{$vo.cate_name}</p>
            <p class="en">{$vo.cate_ename}</p>
        </a>
        <ul class="smenu">
            <!--子栏目调用get_cate_children()函数-->
            <volist name=":get_cate_children($vo['cate_id'])" id="vo">
            <li>
               <a href="#">{$vo.cate_name}</a>
            </li>
            </volist>
        </ul></li>
</volist>


微信扫描下方的二维码阅读本文

阅读剩余
THE END
版权声明