提前讲解一下下面这段onethink代码怎么使用!
在实现这段onethink代码之前首先的实现onethink分类+onethink模型数据实现onethink单页面发布文章,也就是在后台内容页面分类连接点击的时候可以实现单页发布和已经有的列表文档发布。
然而实现这样发布单页和文档列表,需要对分类表进行数据字段扩展,判断当前分类是否单页面,如果是单页面那就改变分类文章发布连接,从新修改后台控制器以及相关模型。
实现后的这一需求还在调试中和测试,暂且不发布出来,等待完善。
下面这段代码实现的就是导航分类列表和单页文章。
/**
* 获取分类树,指定分类则返回指定分类极其子分类,不指定则返回所有分类树
* @param integer $id 分类ID
* @param boolean $field 查询字段
* @return array 分类树
* @author is_chambers 931507706@qq.com
*/
public function getTree($id = 0, $field = true){
/* 获取当前分类信息 */
if($id){
$info = $this->info($id);
$id = $info['id'];
}
/* 获取所有分类 */
$map = array('status' => 1);
$list = $this->field($field)->where($map)->order('sort')->select();
foreach ($list as $key => $value) {
if($value['is_page']){
$list[$key]['url'] = U('Article/page',array('cat'=>$value['id']));
}else{
$list[$key]['url'] = U('Article/list',array('cat'=>$value['id']));
}
}
$list = list_to_tree($list, $pk = 'id', $pid = 'pid', $child = '_', $root = $id);
/* 获取返回数据 */
if(isset($info)){ //指定分类则返回当前分类极其子分类
$info['_'] = $list;
} else { //否则返回所有分类
$info = $list;
}
return $info;
}
发表评论 取消回复