Home > Article > Backend Development > PHP implements creating WeChat custom menu instance
WeChat Public PlatformCustom Menu PHP development, how is the WeChat Public Platform custom menu implemented? In fact, it is very simple. First, upgrade to a service account on the WeChat public platform, obtain the appid and appsecret, then obtain the access_token based on these two parameters, and then post a string of characters to the WeChat server based on the access_token.
Before using the general interface, you need to do the following two-step work:
1. Have a WeChat public account and obtain appid and appsecret (apply for internal testing qualifications on the public platform, and review can be obtained after passing)
2. Obtained through the certificate acquisition interfaceaccess_token
Note:
access_token is a ticket for third-party access to api resources;
access_token corresponds to the public account and is globally unique If you obtain the ticket repeatedly, the access_token obtained last time will become invalid.
Visit the following address (note to replace your appid and secret):
api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
Then you can see the return information in the browser:
{"access_token":"这里就是你的access_token","expires_in":7200}
Create a custom menu:
<?php header("Content-type: text/html; charset=utf-8"); define("ACCESS_TOKEN", "这里填入你上面获取到的access_token"); //创建菜单 function createMenu($data){ $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)) { return curl_error($ch); } curl_close($ch); return $tmpInfo; } //获取菜单 function getMenu(){ return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/get?access_token=".ACCESS_TOKEN); } //删除菜单 function deleteMenu(){ return file_get_contents("https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".ACCESS_TOKEN); } $data = '{ "button":[ { "type":"click", "name":"首页", "key":"home" }, { "type":"click", "name":"简介", "key":"introduct" }, { "name":"菜单", "sub_button":[ { "type":"click", "name":"hello word", "key":"V1001_HELLO_WORLD" }, { "type":"click", "name":"赞一下我们", "key":"V1001_GOOD" }] }] }'; echo createMenu($data); //echo getMenu(); //echo deleteMenu();
The above is the detailed content of PHP implements creating WeChat custom menu instance. For more information, please follow other related articles on the PHP Chinese website!