PHP微信公众平台自定义菜单
2014-05-12 08:29
501 查看
最近单位搞了微信的公众平台做营销,其中就包括自定义菜单的实现,51模板集分享代码给大家一起来学习,若你是初学者还等什么直接上代码把。
自微信进入5.0,公众号有了服务号和订阅号的区别,其中一个很重要的区别就是服务号可以自定义菜单,而订阅号不可以,所以这篇文章只适合打算开发服务号的朋友。
读这篇文章时,假设你已经成功的申请到了自定义菜单了权限,如果没有,推荐你去看看这篇博文 《自定义菜单的创建及菜单事件响应》,那么现在你已经有了自己的AppId和AppSecret,接下来就是获取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();
?>
注意一点:由于微信缓存的原因,你可能需要取消订阅你原来的微信号后再重新订阅才能看到菜单的效果:51模板集给您介绍更加详细了吧,若还是有什么联系我们
本文来自: 51模板集(www.51mubanji.com)
详细出处参考:http://www.51mubanji.com/xsb/390.html
自微信进入5.0,公众号有了服务号和订阅号的区别,其中一个很重要的区别就是服务号可以自定义菜单,而订阅号不可以,所以这篇文章只适合打算开发服务号的朋友。
读这篇文章时,假设你已经成功的申请到了自定义菜单了权限,如果没有,推荐你去看看这篇博文 《自定义菜单的创建及菜单事件响应》,那么现在你已经有了自己的AppId和AppSecret,接下来就是获取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();
?>
注意一点:由于微信缓存的原因,你可能需要取消订阅你原来的微信号后再重新订阅才能看到菜单的效果:51模板集给您介绍更加详细了吧,若还是有什么联系我们
本文来自: 51模板集(www.51mubanji.com)
详细出处参考:http://www.51mubanji.com/xsb/390.html
相关文章推荐
- 微铺子微信送餐系统 针对大学生兼职创业的实施方案
- 手把手教会你微信公众平台自定义菜单开发——创建菜单
- 微信之父张小龙:怎样做简单的产品经理?
- “微信之父”张小龙:微信背后的产品观
- [c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单
- 微信分享 WeixinJSBridge
- 运动目标检测小程序之修改版
- 微信公众平台开发教程 订阅号与服务号的区别
- 微信的研究(二)
- 微信的研究
- 【已解决】Android微信开放平台,申请移动应用的 应用签名 如何获取
- “微信之父”张小龙:微信背后的产品观
- 微信之父 VS QQ之父,新的微信还是新的腾讯?
- 微信之父张小龙:怎样做简单的产品经理?十
- 微信之父张小龙:怎样做简单的产品经理?九
- 微信之父张小龙:怎样做简单的产品经理?八
- 微信之父张小龙:怎样做简单的产品经理?七
- 微信之父张小龙:怎样做简单的产品经理?六
- 微信之父张小龙:怎样做简单的产品经理?五
- 微信之父张小龙:怎样做简单的产品经理?四