Home > Backend Development > PHP Tutorial > PHP implements custom menu for WeChat development

PHP implements custom menu for WeChat development

墨辰丷
Release: 2023-03-28 14:26:01
Original
2229 people have browsed it

This article mainly introduces the custom menu implementation code of PHP WeChat development in detail, which has certain reference value. Interested friends can refer to it

What are the editing mode and development mode? conflicting. So after we enable the development mode of the WeChat official account, those menus cannot be seen. However, now personal subscription accounts cannot use advanced developer mode, such as custom menus, but we can still test it through a test account and then move the code to the service account.

Customized types include the following:

1. click: click push event
• After the user clicks the click type button, the WeChat server will send a message The interface pushes the message type event structure to the developer (refer to the Message Interface Guide), and brings the key value filled in by the developer in the button. The developer can interact with the user through the customized key value;

2. View: Jump URL
• After the user clicks the view type button, the WeChat client will open the webpage URL filled in by the developer in the button, which can be used with the webpage authorization to obtain the user's basic information. Combining information interfaces to obtain basic user information.

3. scancode_push: Scan code push event
• After the user clicks the button, the WeChat client will launch the scan tool, and the scan will be displayed after completing the scan code operation. The result (if it is a URL, it will enter the URL), and the result of scanning the code will be sent to the developer, who can send a message.

4. scancode_waitmsg: Scan the code to push the event and pop up the "Message Receiving" prompt box
• After the user clicks the button, the WeChat client will activate the scan code Tool, after completing the QR code scanning operation, the result of the QR code scanning will be sent to the developer. At the same time, the scanning tool will be put away, and the "Message Receiving" prompt box will pop up, and then a message from the developer may be received.

Customized types include the following:

5. pic_sysphoto: After the user clicks the button, the system pops up to take pictures and send pictures. The WeChat client will bring up the system camera. After completing the photo taking operation, the taken photo
will be sent to the developer, and the event will be pushed to the developer. At the same time, the system camera will be put away. You may then receive an email from the developer. information.

6. pic_photo_or_album: After the user clicks the button to take a photo or send a picture to the album, the WeChat client will pop up a selector for the user to choose "take a photo" or "Select from mobile phone album". After the user chooses, he will go through the other two processes.

7. pic_weixin: After the user clicks the button of the pop-up WeChat photo album sender, the WeChat client will call up the WeChat photo album. After completing the selection operation, Send the selected photos to the developer's server, push the event to the developer, and close the album. You may receive messages from the developer later.

Provide the code. Just upload the code to the server and follow the official account again to see the custom menu in development mode


$appid = '微信公众号的appid'; 
$appsecret = '微信公众号的appsecret'; 
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret=$appsecret"; 
$output = https_request($url); 
$jsoninfo = json_decode($output,true); 
$access_token = $jsoninfo["access_token"]; 
$jsonmenu = '{ 
  "button":[ 
  { 
   "name":"学校系统", 
   "sub_button":[ 
    { 
     "type":"click", 
     "name":"课程表", 
     "key":"课程表" 
    }, 
    { 
     "type":"click", 
     "name":"个人信息", 
     "key":"个人信息" 
    }, 
    { 
     "type":"click", 
     "name":"平时成绩", 
     "key":"平时成绩" 
    }, 
    { 
     "type":"click", 
     "name":"奖惩记录", 
     "key":"奖惩记录" 
    } 
   ] 
  }, 
  { 
   "name":"技术分享", 
   "sub_button":[ 
    { 
     "type":"click", 
     "name":"移动WEB开发", 
     "key":"移动WEB开发" 
    }, 
    { 
     "type":"click", 
     "name":"J2EE框架", 
     "key":"J2EE框架" 
    }, 
    { 
     "type":"click", 
     "name":"Android开发", 
     "key":"Android开发" 
    }, 
    { 
     "type":"click", 
     "name":"PHP框架", 
     "key":"PHP框架" 
    } 
   ] 
  },{ 
   "name":"技术支持", 
   "sub_button":[ 
    { 
     "type":"click", 
     "name":"在线客服", 
     "key":"在线客服" 
    }, 
    { 
     "type":"click", 
     "name":"技术分享", 
     "key":"技术分享" 
    }, 
    { 
     "type":"view", 
     "name":"天气预报", 
     "url":"http://m.hao123.com/a/tianqi" 
    } 
   ] 
  } 
 
 ] 
 }'; 
 
 
 //创建菜单实现 
 $url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token='.$access_token; 
 $result = https_request($url,$jsonmenu); 
 var_dump($result); 
 function https_request($url,$data = null){ 
  $curl = curl_init(); 
  curl_setopt($curl,CURLOPT_URL,$url); 
  curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,0); 
  curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,0); 
  if(!empty($data)){ 
   curl_setopt($curl,CURLOPT_POST,1); 
   curl_setopt($curl,CURLOPT_POSTFIELDS,$data); 
  } 
  curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); 
  $output = curl_exec($curl); 
  curl_close($curl); 
  return $output; 
 }
Copy after login

The above is the entire content of this article, I hope it will be helpful to everyone's study.


Related recommendations:

PHP implements method of obtaining IP detailed address based on Sina IP library

Summary of PHP practical regular expressions

PHP methods to implement exception handling classes

The above is the detailed content of PHP implements custom menu for WeChat development. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template