微信公衆賬號服務號自定義菜單配置與實現

微信自定義菜單 實現其實非常簡單。只不過很多人不知道怎麼寫代碼 怎麼去做。

下面po上我的實現方法,以備後用。

1、拿到access_token

[php] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. <?php  
  2. /** 
  3.  * get access token 
  4.  * @author Ren Kan <rk6556(a)gmail.com> 
  5.  */  
  6.   
  7. header("Content-type: text/html; charset=utf-8");    
  8.   
  9. $appid = "YOUR APPID";  
  10. $appsecret = "YOUR APP SECRET";  
  11. $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret;  
  12.   
  13. $content = file_get_contents($url);  
  14.   
  15. $info = json_decode($content);  
  16.   
  17. echo $info->access_token;  
  18.   
  19. ?>  

2、配置自定義菜單

[php] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. $ACCESS_TOKEN = "THE ACCESS TOKEN GOT ABOVE";  
  2.   
  3. /* 這裏是視圖類型的自定義菜單反饋條目 
  4.     { 
  5.         "type": "view", 
  6.         "name": "關於我們", 
  7.         "url": "http://blog.csdn.net/rk2900" 
  8.     } 
  9.  
  10. */  
  11.   
  12.   
  13. $data = '{  
  14.     "button":  
  15.     [  
  16.         {     
  17.             "name""綁定相關",  
  18.             "sub_button":  
  19.             [  
  20.                 {  
  21.                     "type""click",  
  22.                     "name""綁定賬號",  
  23.                     "key""BIND_DEVICE"  
  24.                 },  
  25.                 {  
  26.                     "type""click",  
  27.                     "name""綁定狀態",  
  28.                     "key""BIND_INFO"  
  29.                 },  
  30.                 {  
  31.                     "type""click",  
  32.                     "name""解除綁定",  
  33.                     "key""BIND_CANCEL"  
  34.                 }  
  35.             ]  
  36.         },  
  37.         {  
  38.             "name""相冊操作",  
  39.             "sub_button":  
  40.             [  
  41.                 {  
  42.                     "type""click",  
  43.                     "name""刪除上一張",  
  44.                     "key""DELETE_LAST"  
  45.                 },  
  46.                 {  
  47.                     "type""click",  
  48.                     "name""瀏覽相冊",  
  49.                     "key""BROWSE"  
  50.                 }  
  51.             ]  
  52.         },  
  53.         {  
  54.             "name""購買微相框",  
  55.             "sub_button":   
  56.             [  
  57.                 {  
  58.                     "type""click",  
  59.                     "name""客服電話",  
  60.                     "key""PHONE"  
  61.                 },  
  62.                 {  
  63.                     "type""click",  
  64.                     "name""購買方式",  
  65.                     "key""BUY"  
  66.                 }  
  67.             ]  
  68.         }  
  69.     ]  
  70.  }';  
  71.  echo $data;  
  72.    
  73.  $ch = curl_init();   
  74.  curl_setopt($ch, CURLOPT_URL, "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$ACCESS_TOKEN}");   
  75.  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");  
  76.  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);   
  77.  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);  
  78.  curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');  
  79.  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);  
  80.  curl_setopt($ch, CURLOPT_AUTOREFERER, 1);   
  81.  curl_setopt($ch, CURLOPT_POSTFIELDS, $data);  
  82.  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);   
  83.  echo $ch;  
  84.  $tmpInfo = curl_exec($ch);   
  85.  if (curl_errno($ch))   
  86.  {    
  87.     echo 'Errno'.curl_error($ch);  
  88.  }  
  89.    
  90.  curl_close($ch);   
  91.  echo $tempInfo;    
  92.  /**/  

以上代碼構建以後,只需要終端利用命令php shellname.php依次執行即可。
效果在公衆賬號頁面過會就會看到更新了。
效果如下:
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章