创建自定义菜单

参考文档

官方创建菜单方法

easywechat插件创建菜单方法

FastAdmin的菜单管理

菜单

示例

这里是新增模块和控制器来写

<?php

namespace app\official\controller;

use think\Controller;
// 微信公众号封装类
use EasyWeChat\Factory;
// 微信公众号配置
use addons\wechat\library\Config;

class Menu extends Controller
{
    // 微信属性
    protected $WeChat = null;

    public function __construct()
    {
        // 手动继承父级的构造函数
        parent::__construct();

        // 初始化配置
        $this->WeChat = Factory::officialAccount(Config::load());
    }

    /**
     * 创建菜单
    */
    public function create()
    {
        // 菜单数组
        $buttons = [
            [
                "type" => "click",
                "name" => "今日歌曲",
                "key"  => "V1001_TODAY_MUSIC"
            ],
            [
                "name"       => "菜单",
                "sub_button" => [
                    [
                        "type" => "view",
                        "name" => "搜索",
                        "url"  => "http://www.soso.com/"
                    ],
                    [
                        "type" => "view",
                        "name" => "视频",
                        "url"  => "http://v.qq.com/"
                    ],
                    [
                        "type" => "click",
                        "name" => "赞一下我们",
                        "key" => "V1001_GOOD"
                    ],
                ],
            ],
        ];

        // 调用menu对象的创建菜单的方法
        $result = $this->WeChat->menu->create($buttons);

        if($result)
        {
            echo '创建成功';
        }else{
            echo '创建失败';
        }
    }
}

写完后需要在浏览器访问一下该地址,例如:http://your.site.com/official/menu/create,如果公众号的菜单还没更新,可以尝试取消关注公众账号后再次关注,则可以看到创建后的效果或者再尝试访问该地址

powered by GitbookEdit Time: 2024-06-06 18:25:40