自定义菜单能够帮助公众号丰富界面,让用户更好更快地理解公众号的功能。本文主要和大家分享微信开发创建自定义菜单的方法,希望能帮助到大家。
1、自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单。
2、一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“...”代替。
3、创建自定义菜单后,菜单的刷新策略是,在用户进入公众号会话页或公众号profile页时,如果发现上一次拉取菜单的请求在5分钟以前,就会拉取一下菜单,如果菜单有更新,就会刷新客户端的菜单。测试时可以尝试取消关注公众账号后再次关注,则可以看到创建后的效果。
自定义菜单接口可实现多种类型按钮总共有10种,最常见的有两种:
1、click:点击推事件用户点击click类型按钮后,微信服务器会通过消息接口推送消息类型为event的结构给开发者(参考消息接口指南),并且带上按钮中开发者填写的key值,开发者可以通过自定义的key值与用户进行交互;
2、view:跳转URL用户点击view类型按钮后,微信客户端将会打开开发者在按钮中填写的网页URL,可与网页授权获取用户基本信息接口结合,获得用户基本信息。
至于构造curl请求函数和获取access_token这里就不用贴出来了,具体见
PHP中的curl网络请求
获取微信基础接口凭证Access_token
//自定义菜单栏 public function _createMenu(){ $curl = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token='.$this->_getAccessToken(); $data = ' { "button":[ { "name":"常用服务", "sub_button":[ { "type":"view", "name":"百度一下", "url":"https://www.baidu.com/" }, { "type":"view", "name":"腾讯视频", "url":"http://v.qq.com/" }, { "type":"click", "name":"创业杂谈", "key":"TALK" }] }, { "type":"click", "name":"今日歌曲", "key":"TODAY_MUSIC" }] }'; $result = $this->_request($curl,true,'POST',$data); echo $result; }
按钮类型为click类型的时候,在接收事件推送里边必须有与之对应的key值,否则得不到应有的响应。详见微信消息管理之接收事件推送
相关推荐:
以上是微信开发创建自定义菜单的方法的详细内容。更多信息请关注PHP中文网其他相关文章!