关于微信公众号中的自定义菜单

最近,学习了微信公众号中的菜单,深有体会。


        //关于获取Access_token
        public function test(){
		$accessToken = getAccess_token();
		var_dump($accessToken);
	}
        //关于自定义菜单
         public function menuedit(){
		// $mp=getAccess_token();
		$mp=getCurrentMp();
		// echo $mp;
		// exit;
		if(empty($mp)){
			$this->ajaxReturn(array('error'=>true,'msg'=>'没有该公众号!','url'=>U('mp/index')));
			exit;
		}
		$data1=I('post.data');
		// $this->ajaxReturn($data);
		$arr=array();
		foreach ($data1 as $key => $value) {
			$row=array();
			$row['mp_id']=$mp['id'];
			$row['index']=$value['id'];
			$row['pindex']=$value['pid'];
			$row['name']=$value['name'];
			$row['content']=$value['code'];
			$row['type']=$value['type'];
			$row['sort']=$value['sort'];
			$arr[]=$row;
		}
		$model=M('mp_menu');
		$model->where("mp_id={$mp['id']}")->delete();
		$model->addAll($arr);
		// $this->ajaxReturn(array('error'=>false,'data'=>$arr));
		// exit;
		$data2=$data1;
		foreach ($data1 as $key1 => $value1) {
			foreach ($data2 as $key2 => $value2) {
				if($value1['id']==$value2['pid']){
					$data1[$key1]['type']='';
					$data1[$key1]['code']='';
					break;
				}
			}
			unset($data1[$key1]['sort']);
			if($value['type']='event'){
				$value['type']=$value['code'];
				$value['code']='k_'.rand(100,999);
			}
		}
		include APP_PATH . 'LaneWeChat/lanewechat.php';
		$ret = \LaneWeChat\Core\Menu::setMenu($data);
		file_put_contents('menu.txt',$ret);
		// $this->ajaxReturn($ret);
			if($ret === true){
				$this->ajaxReturn(array('msg'=>'创建菜单成功!'));
			}else{
				$this->ajaxReturn(array('msg'=>$ret));
			}
		}

以上代码为获取access_token和微信公众号中自定义菜单的内容,通过两个方法完成的。

以下的页面便是我们做的项目,这就是自定义菜单,可以提供发布功能,同步以及删除功能。



猜你喜欢

转载自blog.csdn.net/k363890296/article/details/79919356