微信编辑自定义菜单

开发微信菜单栏除了使用微信编辑自定义菜单功能外,我们开发者还可以通过编写代码来自定义菜单。

首先在本地(或服务器下)编辑以下代码并运行(或者curl模拟请求)

说明

文件名为make_menu.php

1、点击我要预订,跳转到…页面

2、点击最新活动,显示二级菜单栏

3、点击神秘房客报名,请求配置文件,返回相应事件。

<?php
//微信公众平台appid和appsecret
$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"];
//print_r($access_token);die;

$jsonmenu = ‘{
      "button":[
      {
            "type":"view",
            "name":"我要预订",
            "url":"http://www.test.com/yuding"
       },

       {
           "name":"最新活动",
           "sub_button":[
            {
               "type":"view",
               "name":"免押金住宿",
               "url":"http://www.test.com/mianyajin"
            },
            {
               "type":"view",
               "name":"房东招募",
               "url":"http://www.test.com/zhaomu"
            },
            {
                "type":"view",
                "name":"恋家优选",
                "url":"http://www.test.com/youxuan"
            },
            {
                "type":"click",
                "name":"神秘房客报名",
                "key":"mtr"
            }]
       },

       {
            "name":"更多服务",
           "sub_button":[
            {
               "type":"view",
               "name":"下载APP",
               "url":"http://www.test.com/download"
            },
            {
               "type":"view",
               "name":"房东助手",
               "url":"http://www.test.com/zhushou"
            },
            {
                "type":"view",
                "name":"查询订单",
                "url":"http://www.test.com/dingdan"
            },
            {
               "type":"click",
               "name":"房东指南",
               "key":"lg"
            },
            {
                "type":"click",
                "name":"房客指南",
                "key":"tg"
            }]
       },
       ]
 }‘;

$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, 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;
}

?>
时间: 2024-08-08 16:09:05

微信编辑自定义菜单的相关文章

html css 仿微信底部自定义菜单

最近几个月一直从事微信开发,从刚开始的懵懂渐渐成长了一点.今天觉得微信底部自定义菜单,如果能在html的页面上也能显示就好了. 记得以前看过某个网页有类似效果.查找了该网页的css.  ok现在html css 实现微信自定义菜单效果. 不多说直接上代码. /** * 仿微信自定义菜单 * * @author xuyw * @email [email protected] * @date 2014-07-27 */ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HT

如何在微信的自定义菜单上实现“历史消息”功能?

最近在开发微信的接口发现可以通过菜单实现微信的历史消息(历史消息是指订阅号或者服务号每次群发的消息),拿出来与大家分享,操作方法如下: 1.首先进入到您维护的微信订阅号或者服务号,点击帐号详情(右上的小人像). 2.进入帐号详情,找到“查看消息”并点击进入. 3.进入到历史消息页面后,点击右上角的“更多按钮”(三个竖排的点),找到复制链接,复制这个链接,这个链接就是我们要找的历史消息链接. 4.在微信中增加一个”历史消息“菜单,设置为视图类型,将菜单试图地址设置为刚才复制的链接,然后保存生效.

微信最新自定义菜单事件

自定义菜单针对开发者增加调起扫一扫.发图片.发地理位置等能力 自定义菜单作为能够帮助公众号丰富界面,让用户更好更快地理解公众号的重要功能,现在针对开发者增加了点击菜单后调起扫一扫(支持二维码/一维码).发图片.发地理位置的能力,需开发实现.原有自定义菜单开发权限的公众号,均可获得以上能力.增加的详细能力如下: 1. 扫码推送事件 用户点击按钮后,微信客户端将调起扫一扫工具,完成扫码操作后显示扫描结果(如果是URL,将进入URL),且会将扫码的结果传给开发者,开发者可以下发消息. 2. 扫码推送事

CI框架微信开发-自定义菜单

在CI框架下面实现了自定义菜单功能.写了一个model,一个类库.顺便附带access_token的实现方式 <?php class Makemenu{ public $menustr; public function __construct(){ } public function init(){ $this->dolist(); return $this->setmenu(); } private function dolist(){ $CI =& get_instance(

php curl返回false----curl调用微信创建自定义菜单返回false

在调用微信公众平台的创建自定义菜单接口来创建自定义菜单时遇到一个大坑,php curl返回false一直无法调试通过,代码如下: > //创建菜单public function menu_create($data){$url =" https://api.weixin.qq.com/cgi-bin/menu/create?access_token={$this->get_access_token()}";echo $url.'----------<br>'; r

微信开发之(五)微信获取自定义菜单

在处理请求的方法上,判断是post的提交方式后加载代码: ///加载自定义菜单 string postData = "{" + "\r\n"; postData += "\"button\":[ " + "\r\n"; postData += "{ " + "\r\n"; postData += "\"name\":\"简单查\

微信删除自定义菜单

使用接口创建自定义菜单后,开发者还可使用接口删除当前使用的自定义菜单. 删除菜单的接口如下: https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=ACCESS_TOKEN 删除自定义菜单代码实现如下所示: $url = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=".$access_token; $result = https_request($

模拟微信后台自定义菜单功能(前端)

准备:jquery layer 效果:横排最多三个,竖排最多五个子菜单,达到最多不现实+ 效果图 1 2 3 4 code: <div id="menus_box"> <div class="wx_menus_one"> <ul> <li onclick="showAddForm(this)" form-data="0"> <a href="#">

关于微信创建自定义菜单教训 {“errcode”:&quot;40016&quot;}

开发微信公众号时发生问题 接口详情:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141013 json通过官方的接口调用工具返回: 200 OK Connection: keep-alive Date: Mon, 29 Oct 2018 07:27:41 GMT Content-Type: application/json; encoding=utf-8 Content-Length: 27 { "errcode&