微信公众号开发教程[011]-自定义菜单以及个性化菜单
来源:互联网 发布:去掉淘宝客链接 编辑:程序博客网 时间:2024/06/06 06:42
我承接app和微信公众号开发,如果有谁需要的话,可以惠顾我,谢谢.
QQ: 40678884
微信: szuzsq
主页: http://www.wxshaker.com
博客: http://blog.csdn.net/szuzsq
-------------------------------------------------------------------------------------------------------------------------------------
一.通用的自定义菜单
1).创建通用菜单.代码如下:
function create() {$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=$ACCESS_TOKEN";$data = '{"button": [{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": [{"type": "click","name": "1.click.赞一下我们","key": "V1001_GOOD"},{"type": "view","name": "2.view.视频","url": "http://v.qq.com/"},{"type": "scancode_push","name": "3.scancode_push.扫码推事件","key": "rselfmenu_0_1","sub_button": []},{"type": "scancode_waitmsg","name": "4.scancode_waitmsg.扫码带提示","key": "rselfmenu_0_0","sub_button": []},{"type": "pic_sysphoto","name": "5.pic_sysphoto.系统拍照发图","key": "rselfmenu_1_0","sub_button": []}]},{"name": "菜单","sub_button": [{"type": "pic_photo_or_album","name": "6.pic_photo_or_album.拍照/相册发图","key": "rselfmenu_1_1","sub_button": []},{"type": "pic_weixin","name": "7.pic_weixin.微信相册发图","key": "rselfmenu_1_2","sub_button": []},{"type": "location_select","name": "8.location_select.发送位置","key": "rselfmenu_2_0"}]}]}';$result = curl_http_post($url, $data);echo $result;}
返回结果如下:
{"errcode":0,"errmsg":"ok"}
2).查询通用菜单.代码如下:
function query() {$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token=$ACCESS_TOKEN";$result = curl_http_get($url);echo $result;}
返回结果如下:
{"button": [{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": [{"type": "click","name": "1.click.赞一下我们","key": "V1001_GOOD"},{"type": "view","name": "2.view.视频","url": "http://v.qq.com/"},{"type": "scancode_push","name": "3.scancode_push.扫码推事件","key": "rselfmenu_0_1","sub_button": []},{"type": "scancode_waitmsg","name": "4.scancode_waitmsg.扫码带提示","key": "rselfmenu_0_0","sub_button": []},{"type": "pic_sysphoto","name": "5.pic_sysphoto.系统拍照发图","key": "rselfmenu_1_0","sub_button": []}]},{"name": "菜单","sub_button": [{"type": "pic_photo_or_album","name": "6.pic_photo_or_album.拍照/相册发图","key": "rselfmenu_1_1","sub_button": []},{"type": "pic_weixin","name": "7.pic_weixin.微信相册发图","key": "rselfmenu_1_2","sub_button": []},{"type": "location_select","name": "8.location_select.发送位置","key": "rselfmenu_2_0"}]}]}
3).获取自定义菜单配置接口.代码如下:
function info() {$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/get_current_selfmenu_info?access_token=$ACCESS_TOKEN";$result = curl_http_get($url);echo $result;}
我这里和"2).查询通用菜单"结果一样.返回结果如下:
{"button": [{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": [{"type": "click","name": "1.click.赞一下我们","key": "V1001_GOOD"},{"type": "view","name": "2.view.视频","url": "http://v.qq.com/"},{"type": "scancode_push","name": "3.scancode_push.扫码推事件","key": "rselfmenu_0_1","sub_button": []},{"type": "scancode_waitmsg","name": "4.scancode_waitmsg.扫码带提示","key": "rselfmenu_0_0","sub_button": []},{"type": "pic_sysphoto","name": "5.pic_sysphoto.系统拍照发图","key": "rselfmenu_1_0","sub_button": []}]},{"name": "菜单","sub_button": [{"type": "pic_photo_or_album","name": "6.pic_photo_or_album.拍照/相册发图","key": "rselfmenu_1_1","sub_button": []},{"type": "pic_weixin","name": "7.pic_weixin.微信相册发图","key": "rselfmenu_1_2","sub_button": []},{"type": "location_select","name": "8.location_select.发送位置","key": "rselfmenu_2_0"}]}]}
3).删除通用菜单.代码如下:
function delete() {$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=$ACCESS_TOKEN";$result = curl_http_get($url);echo $result;}
返回结果如下:
{"errcode":0,"errmsg":"ok"}
4).自定义菜单事件推送.
用户点击自定义菜单后,微信会把点击事件推送给开发者.我的结果如下:
<xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506310</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[CLICK]]></Event><EventKey><![CDATA[V1001_GOOD]]></EventKey></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506313</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[VIEW]]></Event><EventKey><![CDATA[http://v.qq.com/]]></EventKey><MenuId>413699252</MenuId></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506514</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[scancode_push]]></Event><EventKey><![CDATA[rselfmenu_0_1]]></EventKey><ScanCodeInfo><ScanType><![CDATA[qrcode]]></ScanType><ScanResult><![CDATA[http://www.163.com]]></ScanResult></ScanCodeInfo></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506624</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[scancode_waitmsg]]></Event><EventKey><![CDATA[rselfmenu_0_0]]></EventKey><ScanCodeInfo><ScanType><![CDATA[qrcode]]></ScanType><ScanResult><![CDATA[陈孟江,你这么吊,你妈妈知道么?]]></ScanResult></ScanCodeInfo></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506760</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[pic_sysphoto]]></Event><EventKey><![CDATA[rselfmenu_1_0]]></EventKey><SendPicsInfo><Count>1</Count><PicList><item><PicMd5Sum><![CDATA[de785d149820eaae34d0f2d0298aa607]]></PicMd5Sum></item></PicList></SendPicsInfo></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468506942</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[pic_photo_or_album]]></Event><EventKey><![CDATA[rselfmenu_1_1]]></EventKey><SendPicsInfo><Count>1</Count><PicList><item><PicMd5Sum><![CDATA[5f8bba221fa5c0de7835776a59c1c677]]></PicMd5Sum></item></PicList></SendPicsInfo></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468507103</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[pic_weixin]]></Event><EventKey><![CDATA[rselfmenu_1_2]]></EventKey><SendPicsInfo><Count>0</Count><PicList></PicList></SendPicsInfo></xml><xml><ToUserName><![CDATA[gh_056dd68c0c2a]]></ToUserName><FromUserName><![CDATA[oe5SXv71irmrQ0TH-JxA-z_hmYLE]]></FromUserName><CreateTime>1468507124</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[location_select]]></Event><EventKey><![CDATA[rselfmenu_2_0]]></EventKey><SendLocationInfo><Location_X><![CDATA[23]]></Location_X><Location_Y><![CDATA[114]]></Location_Y><Scale><![CDATA[15]]></Scale><Label><![CDATA[深圳市南山区西丽新围村小区内(西丽366大街东)]]></Label><Poiname><![CDATA[]]></Poiname></SendLocationInfo></xml>
二.个性化菜单
1 创建个性化菜单.代码如下:
function add() { //创建个性化菜单$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/addconditional?access_token=$ACCESS_TOKEN";$data = '{"button": [{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": [{"type": "view","name": "搜索","url": "http://www.soso.com/"},{"type": "view","name": "视频","url": "http://v.qq.com/"},{"type": "click","name": "赞一下我们","key": "V1001_GOOD"}]}],"matchrule":{"sex": "1","country": "中国","province": "广东","city": "深圳","client_platform_type": "1","language": "zh_CN"}}';$result = curl_http_post($url, $data);echo $result;}
返回结果如下:
{"errcode":0,"errmsg":"ok"}
3).测试个性化菜单匹配结果.代码如下:
function match() { //测试个性化菜单匹配结果$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/trymatch?access_token=$ACCESS_TOKEN";$data = '{"user_id":"szuzsq"}';$result = curl_http_post($url, $data);echo $result;}
返回结果如下:
{"button": [{"type": "click","name": "今日歌曲","key": "V1001_TODAY_MUSIC"},{"name": "菜单","sub_button": [{"type": "view","name": "搜索","url": "http://www.soso.com/"},{"type": "view","name": "视频","url": "http://v.qq.com/"},{"type": "click","name": "赞一下我们","key": "V1001_GOOD"}]}]}
4). 删除个性化菜单.代码如下:
function del() { //删除个性化菜单$ACCESS_TOKEN = "uZNdRwxNN3V7RwT5x_K8K21wNWfO1kX4dMH3JS0usWmXXMIB03-WWoTfMg8as1NyuznLfZK_GqYgJgqiYwIRO4dCK0ZbYNQd-5cxYSX5awA3TkEE-5Qn4QTneX8YIpnTJWJfABAZMZ";$url = "https://api.weixin.qq.com/cgi-bin/menu/delconditional?access_token=$ACCESS_TOKEN";$data = '{"menuid":"413705287"}';$result = curl_http_post($url, $data);echo $result;}
返回结果如下:
{"errcode":0,"errmsg":"ok"}
5).查询个性化菜单.
使用普通自定义菜单查询接口可以获取默认菜单和全部个性化菜单信息.
6).删除个性化菜单
使用普通自定义菜单删除接口可以删除所有自定义菜单(包括默认菜单和全部个性化菜单).
三.效果图
我只看到了通用的自定义菜单,个性化菜单没看到.官方档上说:"个性化菜单要求用户的微信客户端版本在iPhone6.2.2,Android6.2.4以上".4s的吊丝表示伤不起.如下图:
和
- 微信公众号开发教程[011]-自定义菜单以及个性化菜单
- 微信公众号开发(五)个性化菜单
- 微信公众号开发--自定义菜单
- 微信公众号个性化菜单
- 微信公众号生成个性化菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- 微信公众平台开发教程(五)自定义菜单
- java微信开发API解析(四)-自定义菜单以及个性化菜单实现
- 微信公众号开发---实现微信自定义菜单创建以及消息回复等
- 微信公众平台开发(109) 个性化菜单
- 微信公众平台自定义菜单开发
- 微信公众平台开发自定义菜单
- 微信公众平台开发-自定义菜单
- iOS开发:UITableview的多选功能实现
- 2016下半年技术规划
- phpstorm + xdebug + Xdebug helper 调试php
- HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth之完全详解
- MAC下的文本编辑器 Vim
- 微信公众号开发教程[011]-自定义菜单以及个性化菜单
- redis配置文件
- JavaScript事件类型(三)鼠标事件
- 如何写一篇好的技术博客
- hihocoder #1061 : Beautiful String
- Android 开发你需要了解的 Gradle 配置
- Git版本控制
- 1016-Prime Ring Problem,素数环,深搜!
- Android学QQ聊天列表展示ListView