LaneWeChat

PHP微信开发框架,高效开发微信公众号应用。简洁而又轻量

GitHub下载 查看手册

添加微信自定义菜单

Visits: 14329 Date: 2014-11-05 15:34:19 Power By 李轩Lane

    

        场景描述:微信公众号底部的导航栏按钮


        场景举例:自定义菜单可以更加快捷方便的为用户服务。而不需要用户每次都要打字发送消息来获取所需要的信息。轻轻一点按钮,马上拥有!


        注:微信官方仅供认证号使用自定义菜单。


        代码:


            <?php

            include 'lanewechat.php';


            $menuList = array(

                array('id'=>'1', 'pid'=>'0', 'name'=>'菜单1', 'type'=>'', 'code'=>''),

                array('id'=>'2', 'pid'=>'0', 'name'=>'菜单2', 'type'=>'', 'code'=>''),

                array('id'=>'3', 'pid'=>'0', 'name'=>'地理位置', 'type'=>'location_select', 'code'=>'key_7'),

                array('id'=>'4', 'pid'=>'1', 'name'=>'点击推事件', 'type'=>'click', 'code'=>'key_1'),

                array('id'=>'5', 'pid'=>'1', 'name'=>'跳转URL', 'type'=>'view', 'code'=>'http://www.lanecn.com/'),

                array('id'=>'6', 'pid'=>'2', 'name'=>'扫码推事件', 'type'=>'scancode_push', 'code'=>'key_2'),

                array('id'=>'7', 'pid'=>'2', 'name'=>'扫码等收消息', 'type'=>'scancode_waitmsg', 'code'=>'key_3'),

                array('id'=>'8', 'pid'=>'2', 'name'=>'系统拍照发图', 'type'=>'pic_sysphoto', 'code'=>'key_4'),

                array('id'=>'9', 'pid'=>'2', 'name'=>'弹拍照或相册', 'type'=>'pic_photo_or_album', 'code'=>'key_5'),

                array('id'=>'10', 'pid'=>'2', 'name'=>'弹微信相册', 'type'=>'pic_weixin', 'code'=>'key_6'),

            );


            $result = \LaneWeChat\Core\Menu::setMenu($menuList);


Reply: njnukevin On 2015-01-16 13:58:25

本文档的场景描述出错了哦~

回复

Reply: Lane On 2015-02-11 10:49:36

抱歉。。已经修正!

回复

Reply: 你好,自定义菜怎么在公众号中显示出来? 用户进入公众号,就弹出自定义菜单! On 2015-03-04 16:47:08

你好,自定义菜怎么在公众号中显示出来? 用户进入公众号,就弹出自定义菜单!

回复

Reply: Lane On 2015-03-27 00:25:17

理论请看:http://lanewechat.lanecn.com/doc/main/aid-15 实战请看:http://lanewechat.lanecn.com/doc/main/aid-25 在设置成功后,因为微信的缓存机制,需要取消关注然后重新关注,或者24小时以内自动变更。

回复

Reply: 123 On 2015-05-11 17:48:22

2131

回复

Reply: kennny On 2015-05-14 13:56:57

你好、为什么我还是设置不出来自定义菜单呢?可以给我讲解一下吗?

回复

Reply: ML On 2015-06-17 18:50:27

这段代码我应该贴在wechat.php中还是贴在其他地方呢?

回复

Reply: ML On 2015-06-18 11:39:00

实验之后终于明白了,希望对以后的读者有帮助。新建一份文件,如menu.php,复制这段代码。然后再浏览器里运行。http://项目名称/menu.php。如果需要修改菜单,只要在这份文件里修改,然后重新运行。为了能即时看到效果,请先取消关注然后再关注。谢谢Lane分享的代码!

回复

Reply: 111 On 2015-06-20 00:07:51

为啥我试了不行呢??

回复

Reply: ML On 2015-06-23 13:38:29

我不清楚你怎么操作的呢。我的流程是:1)修改config.php,填写所有相关验证字段;2)运行wechat.php;3)复制本页代码到menu.php;4)浏览器运行输入地址http://项目域名/menu.php。希望我的流程对你有帮助!

回复

Reply: Abby On 2015-09-09 23:42:35

May 14, 2014 - New Unlimited No cost Gems Clash of Clans cheats analysis hack, Server part exploit without download required.

回复

Reply: hansoy On 2015-11-18 11:22:52

1、menu.php 中 $menuList = array( array('id'=>'1', 'pid'=>'0', 'name'=>'主页', 'type'=>'view', 'code'=>'http://www.lanecn.com/'), array('id'=>'2', 'pid'=>'0', 'name'=>'关于我们', 'type'=>'click', 'code'=>'key_aboutus') ); 2、找到core\wechatrequest.lib.php中的eventClick方法,增加下面代码 switch ($eventKey) { case 'key_aboutus': $content = '这是关于我们显示的文本'; break; default: $content = '收到点击菜单事件,您设置的key是' . $eventKey; break; }

回复

Reply: jason On 2016-02-02 18:46:00

这个是不是要认证用户才能使用,我是个人的好像说没有授权?

回复

Reply: yoyo On 2016-02-23 15:49:53

请问,文件lanewechat 怎么调用呢? 比如我用sae 把文件上面上去了,有个文件夹lanewechat .但是我想在这个外面的文件夹调用,index.php 里面 调用,接受用户的你好,回复 hello. 该怎么写代码呢,找了很久都没找到相关信息,只有 include 和 什么命名空间。 导入下面怎么写呢,还有微信那面认证网址 是那里呢?

回复

Reply: C6H5OH On 2016-05-16 10:16:41

我在本地测试自定义菜单,需要把accesstoken类中的_getAccessToken和checkAccessToken改成public才能得到accesstoken。请问这是什么原因?

回复

Reply: tot On 2016-11-28 22:41:14

file_get_contents(access_token): failed to open stream 我出现这个错误,但是我打印_getAccessToken()里面的return返回值是有东西的,为什么会是这样呢

回复

Add Comment
©2014 lanewechat.lanecn.com , All rights reserved. Power By LaneWeChat 微信PHP开发框架.  京ICP备14005030号