寒假里时普通公众账号还是不能自定义菜单的,这是后来微信才开放给普通公众账号的。自定义菜单需要http请求url,地址为 https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN,为此,封装成私有postRequest()函数,第一个参数为请求的地址,第二个为请求post过去的数据,自定义菜单里post数据就是菜单的信息了。目前自定义菜单接口可以实现两种类型的按钮,click类型服务器会推送消息类型为event,并且需要传入key值,用于后面判断执行哪个按钮的指令。view类型带有的是url,点击后会直接打开url地址,相当于点击的一个网页链接。目前最多可以创建3个一级菜单,每个一级菜单最多可以创建5个二级菜单。试了一下,这样的限制在用户体验上是很合理的。
需要注意的是自定义菜单函数需要在类之外就要实例化,也就是$wechatObj->bottomMenu();,而且创建自定义菜单后,由于微信客户端的缓存,需要24小时之后才能显示出来,想要立即显示的办法就是取消关注后再次关注,这样就能获得最新的状态了。
|
|
菜单部分注意数public函数,外部需要调用
|
|
获取用户的信息需要GET方式请求url:https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
GET方式的请求区别于POST方式,我将它写在了如下的函数里
|
|
参数只要求一个地址就行了,正常情况下服务器返回的是JSON数据,包含用户的昵称、性别、地区等等,方便于用户来源的统计分析等。