首页 > 开发 > PHP > 正文

微信自定义菜单的处理开发示例

2024-05-04 23:34:28
字体:
来源:转载
供稿:网友

在微信5.0以前,自定义菜单是作为一种内测资格使用的,只有少数公众帐号拥有菜单,因此出现很多企业为了弄到菜单不惜重金求购。现如今,一大批帐号从订阅号转为服务号,很多都是奔着自定义菜单去的。今天我们就来简单研究下微信自定义菜单的处理。

自定义菜单的创建

 

 
  1. <?php 
  2.  
  3. define("APPID""您的appid"); 
  4. define("APPSECRET""您的appsecret "); 
  5.  
  6. $token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET; 
  7. $res = file_get_contents($token_access_url); //获取文件内容或获取网络请求的内容 
  8. //echo $res; 
  9. $result = json_decode($res, true); //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 
  10. $access_token = $result['access_token']; 
  11.  
  12. define("ACCESS_TOKEN"$access_token); //将access_token定义为常量,便于使用. 
  13.  
  14. $make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" . ACCESS_TOKEN; 
  15.  
  16. $menuData = ' { 
  17. "button":[ 
  18. "type":"click"
  19. "name":"今日歌曲"
  20. "key":"V1001_TODAY_MUSIC" 
  21. }, 
  22. "name":"菜单"
  23. "sub_button":[ 
  24. "type":"view"
  25. "name":"搜索"
  26. "url":"http://www.soso.com/" 
  27. }, 
  28. "type":"view"
  29. "name":"视频"
  30. "url":"http://v.qq.com/" 
  31. }, 
  32. "type":"click"
  33. "name":"赞一下我们"
  34. "key":"V1001_GOOD" 
  35. }] 
  36. }] 
  37. }'; 
  38.  
  39. $ch = curl_init(); 
  40.  
  41. curl_setopt($ch, CURLOPT_URL, $make_menu_url); 
  42. curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); 
  43. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
  44. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 
  45. curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)"); 
  46. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
  47. curl_setopt($ch, CURLOPT_AUTOREFERER, 1); 
  48. curl_setopt($ch, CURLOPT_POSTFIELDS, $menuData); 
  49. curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
  50.  
  51. $info = curl_exec($ch); 
  52.  
  53. //判读执行过程中是否有错误,有则发送数据错误报告. 
  54. if (curl_errno($ch)) { 
  55. echo 'Error' . curl_error($ch); //用户检查php运行环境中的curl模块开启情况. 
  56.  
  57. curl_close($ch); 
  58. print_r($info); //查看post提交到微信服务器后,返回的数据. 

自定义菜单的获取

 

 
  1. <?php 
  2.  
  3. define("APPID""您的appid"); 
  4. define("APPSECRET""您的appsecret "); 
  5.  
  6. $token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET; 
  7. $res = file_get_contents($token_access_url); //获取文件内容或获取网络请求的内容 
  8. $result = json_decode($res, true); //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 
  9. $access_token = $result['access_token']; 
  10.  
  11. $make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/get?access_token=" . $access_token
  12.  
  13. $menu_json = file_get_contents($make_menu_url); 
  14.  
  15. echo $menu_json

自定义菜单的删除

 

 
  1. <?php 
  2.  
  3. define("APPID""您的appid"); 
  4. define("APPSECRET""您的appsecret "); 
  5.  
  6. $token_access_url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . APPID . "&secret=" . APPSECRET; 
  7. $res = file_get_contents($token_access_url); //获取文件内容或获取网络请求的内容 
  8. $result = json_decode($res, true); //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 
  9. $access_token = $result['access_token']; 
  10.  
  11. $make_menu_url = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=" . $access_token
  12.  
  13. $menu_json = file_get_contents($make_menu_url); 
  14.  
  15. echo $menu_json

以上所述就是本文的全部内容了,希望对大家做微信开发有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表