最近要做一个微信公众账号,花了点时间已经将一部分功能完成,其中就包括自定义菜单的实现,现在就将一些代码分享给大家,觉得对自己有帮助就看看!
读这篇文章时,假设你已经成功的申请到了自定义菜单了权限,如果没有,推荐你去看看这篇博文 《自定义菜单的创建及菜单事件响应》接下来就是获取Token了,方法很简单,如下所说:
请求说明
http请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
这是微信上面的文档,现在只要把上面链接中的APPID和APPSECRET修改为自己的AppId和AppSecret,然后直接拷贝至浏览器的地址栏窗口,回车即可获取到那个Token了,如下所示,
{"access_token":"NUF35mOfsEQMoLhezC053RrU4G2rpFsvt5CmG6mFZtRhCsPmA3EK3W0ohUacF-d3lKJW6i7q_a9UrKRNPb6IRtX6FT1qRu_LAHi2FTxpxXwFNYFwIkWU2qqRA","expires_in":7200}
现在你的token已经获取成功了,下来就是相关的代码实现了。
public function createMenu(){
$ACCESS_TOKEN = "前面通过浏览器获取到的Token" ;
$data = '{
"button" :[
{
"type" : "click" ,
"name" : "搜索附近" ,
"key" : "1"
},
{
"type" : "click" ,
"name" : "最新活动" ,
"key" : "2"
},
{
"name" : "更多" ,
"sub_button" :[
{
"type" : "click" ,
"name" : "关于我们" ,
"key" : "3"
},
{
"type" : "click" ,
"name" : "用户反馈" ,
"key" : "4"
},
{
"type" : "click" ,
"name" : "优倍周边" ,
"key" : "5"
}]
}]
}';
$ch = curl_init();
curl_setopt( $ch , CURLOPT_URL, "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$ACCESS_TOKEN}" );
curl_setopt( $ch , CURLOPT_CUSTOMREQUEST, "POST" );
curl_setopt( $ch , CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt( $ch , CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt( $ch , CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)' );
curl_setopt( $ch , CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch , CURLOPT_AUTOREFERER, 1);
curl_setopt( $ch , CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch , CURLOPT_RETURNTRANSFER, true);
$tmpInfo = curl_exec( $ch );
if (curl_errno( $ch )) {
echo 'Errno' .curl_error( $ch );
}
curl_close( $ch );
var_dump( $tmpInfo );
}
|
现在和合适的位置调用上面的方法就可以实现菜单了,
<?php
include_once ( 'include/weixin.class.php' );
define( 'TOKEN' , 'ubive' );
define( 'DEBUG' , false);
$weixin ->createMenu();
?>
|
评论一下?