微信菜单,微信公众平台开发自定义菜单的教程

作者: 计算机网络  发布:2019-09-26

一、自定蒿子单概述

namespace HomeController;

自定鹅菜单可以帮助公众号加上分界面,让顾客更加好更加快地了解群众号的功效。开启自定蒿子杆单后,公众号分界面如图所示:

use ThinkController;

图片 1

define('appid','wx33584f71b4a84fa9');
define('appsecret','');

二、申请自定蒿菜单

class MenuController extends Controller
{
private function access_token(){
$url="."";
$ch=curl_init();//初始化
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$output=curl_exec($ch);
curl_close($ch);
$jsoninfo=json_decode($output,true);
$access_token=$jsoninfo['access_token'];
print_r($access_token.'n');
return $access_token;
}

私家订阅号使用和讯认证、集团订阅号通过微信证实;能够申请到自定义菜单资格

function set_menu(){
//菜单
$data = ' {
"button":[
{
"name":"PHP100",
"sub_button":[
{
"type":"click",
"name":"网络销路好",
"key":"A1"
},
{
"type":"click",
"name":"悬赏与外包",
"key":"A2"
},

劳务号默许有菜单权限。

{
"type":"click",
"name":"个人基本",
"key":"A5"
}]
},
{
"name":"编制程序助手",
"sub_button":[
{
"type":"click",
"name":"函数查询",
"key":"B2"
},
{
"type":"click",
"name":"销路广书籍",
"key":"B3"
},
{
"type":"click",
"name":"教程与讲座",
"key":"B4"
},
{
"type":"click",
"name":"培养锻炼与课程",
"key":"B5"
}]
},
{
"name":"自娱自乐",
"sub_button":[
{
"type":"click",
"name":"发表心理",
"key":"C1"
},
{
"type":"click",
"name":"欢欣段子",
"key":"C2"
},
{
"type":"click",
"name":"无偿与优化",
"key":"C3"
}]
}]
}';

三、获得AppId 和AppSecert

//make post url

在微信后台使用找到高等成效-开辟形式

$url="";
$ch=curl_init();//初始化
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);
curl_exec($ch);
curl_close($ch);
print_r($url);
}

图片 2

}

化为开采者之后,就足以看来appid和appsecert了

图片 3

要是未有url和Token , 你能够先用方倍职业室的上面包车型地铁测量试验通过

URL:   
Token:  weixin

四、获得Access Token

用appid和appsecert获得access token,接口为

程序完结如下

$appid = "";
$appsecret = "";
$url = "";
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
$jsoninfo = json_decode($output, true);
$access_token = $jsoninfo["access_token"];
你也得以直接在浏览器地方栏中,拼接出地址,推行后,得到如下数据

{"access_token":"N2L7KXa084WvelONYjkJ_traBMCCvy_UKmpUUzlrQ0EA2yNp3Iz6eSUrRG0bhaR_viswd50vDuPkY5nG43d1gbm-olT2KRMxOsVE08RfeD9lvK9lMguNG9kpIkKGZEjIf8Jv2m9fFhf8bnNa-yQH3g","expires_in":7200}
参数表达如下

 

参数表明如下

图片 4

其中的

 代码如下

N2L7KXa084WvelONYjkJ_traBMCCvy_UKmpUUzlrQ0EA2yNp3Iz6eSUrRG0bhaR_viswd50vDuPkY5nG43d1gbm-olT2KRMxOsVE08RfeD9lvK9lMguNG9kpIkKGZEjIf8Jv2m9fFhf8bnNa-yQH3g

就是access token。

大概采纳官方的接口调节和测量检验工具,地址为:

选拔网页调节和测量试验工具调节和测量检验自定桐花菜单接口

图片 5

点击检查难点得,得到
图片 6

如此那般也获得了access token

五、协会菜单内容

现阶段自定菊花菜单最多包涵3个一流菜单,每一种顶级菜单最多带有5个二级菜单。一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的局地将会以“…”代替。请在乎,创造自定同蒿单后,由于微信客商端缓存,须求24钟头微信客商端才会议及展览现出来。提出测量试验时能够尝尝撤除关切公众账号后重新关心,则能够看见创设后的效果。

近日自定蓬花菜单接口可达成二种档期的顺序按键,如下:

click:
顾客点击click类型按键后,微信服务器会透过新闻接口推送新闻类型为event 的布局给开辟者(参照他事他说加以考察消息接口指南),况且带上按键中开采者填写的key值,开辟者能够通过自定义的key值与顾客张开互相;
view:
顾客点击view类型按键后,微信顾客端将会展开开拓者在按键中填入的url值 (即网页链接),到达打开网页的目标,建议与网页授权获取客商大旨音信接口结合,得到客户的登多人音讯。

接口调用央求表明

http央求方式:POST(请使用https公约)

诉求示例

 {
     "button":[
     {   
          "type":"click",
          "name":"后天歌曲",
          "key":"V1001_TODAY_MUSIC"
      },
      {
           "type":"click",
           "name":"明星简单介绍",
           "key":"V1001_TODAY_SINGER"
      },
      {
           "name":"菜单",
           "sub_button":[
           {   
               "type":"view",
               "name":"搜索",
               "url":""
            },
            {
               "type":"view",
               "name":"视频",
               "url":""
            },
            {
               "type":"click",
               "name":"赞一下我们",
               "key":"V1001_GOOD"
            }]
       }]
 }
参数表达

回来结果

不错开上下班时间的回来JSON数据包如下:

{“errcode”:0,”errmsg”:”ok”}
荒谬时的回来JSON数据包如下(示例为无效菜单名长度):

{“errcode”:40018,”errmsg”:”invalid button name size”}

六、提交菜单内容给服务器

菜单的JSON结构为

1
{"button":[{"name":"天气预先报告","sub_button":[{"type":"click","name":"时尚之都气候","key":"天气香江"},{"type":"click","name":"香港天气","key":"天气法国巴黎"},{"type":"click","name":"新德里天气","key":"天气苏黎世"},{"type":"click","name":"布Rees班天气","key":"天气费城"},{"type":"view","name":"本地天气","url":"
将以下代码保存为menu.php,何况在浏览器中运营该文件(举个例子

< ?php
 
$access_token = "";
 
$jsonmenu = '{
      "button":[
      {
            "name":"天气预告",
           "sub_button":[
            {
               "type":"click",
               "name":"新加坡天气",
               "key":"天气东京"
            },
            {
               "type":"click",
               "name":"香港天气",
               "key":"天气法国首都"
            },
            {
               "type":"click",
               "name":"布宜诺斯艾Liss天气",
               "key":"天气华盛顿"
            },
            {
               "type":"click",
               "name":"布Rees班天气",
               "key":"天气尼科西亚"
            },
            {
                "type":"view",
                "name":"本地气候",
                "url":""
            }]
 
 
       },
       {
           "name":"方倍专门的学业室",
           "sub_button":[
            {
               "type":"click",
               "name":"集团简单介绍",
               "key":"company"
            },
            {
               "type":"click",
               "name":"野趣游戏",
               "key":"游戏"
            },
            {
                "type":"click",
                "name":"讲个笑话",
                "key":"笑话"
            }]
 
 
       }]
 }';
 
 
$url = ";
$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, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    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;
}
 
?>
抑或应用官方的调治接口 使用网页调试工具调节和测量试验该接口

 

图片 7

图片 8

交由成功后,重新关怀后就可以看见菜单。

刚毅推荐使用官方的网页调节和测验工具调试该接口。

本文由金沙澳门官网送注册58发布于计算机网络,转载请注明出处:微信菜单,微信公众平台开发自定义菜单的教程

关键词: