Skip to content

公众号菜单 ​

这篇解决什么 ​

微信底部自定义菜单落哪张表、保存时有没有「草稿」。读完能对上 mp_menu 和 menuCreate,不要去改后台 system_menu。

默认端口 48080。先接入账号见 公众号接入。

示意图:保存同时写本地树、推微信。没有单独发布接口。

从哪改 ​

名称说明仓库路径
菜单@RequestMapping("/mp/menu")ruoyi-office/yudao-module-mp/yudao-module-mp-server/.../controller/admin/menu/MpMenuController.java
保存POST /save同步微信后重建本地树
清空DELETE /delete?accountId=先 menuDelete 再删库
列表GET /list?accountId=读本地
菜单表mp_menuMpMenuDO
管理端编辑器、预览ruoyi-office-vben/apps/web-antd/src/views/mp/menu/

官方菜单:菜单管理 2119。权限 mp:menu:save、mp:menu:delete。

saveMenu 调 mpService.getMenuService().menuCreate(wxMenu),成功后再 deleteByAccountId 并递归插入。点击类按钮由 MenuHandler 按 menuKey 回消息。

字段 ​

顶级 parentId 是 0。按钮 type 用微信字符串,不是整数枚举。

名称说明仓库路径
accountId / appId归属账号MpMenuDO
menuKey点击 key,列名 menu_key同上
typeclick / view / miniprogram 等同上
url网页、小程序跳转同上
miniProgramAppId / miniProgramPagePath小程序同上
articleId跳转已发表图文同上
replyMessageType + replyContent / replyMediaId点击回复载荷同上

常见 type:click 点击回复,view 网页,miniprogram 小程序,article_view_limited 图文,scancode_waitmsg 扫码回复。扫码推、拍照、选位置等校验后直接放行。

不是后台导航

system_menu 2119 只是管理端入口。改角色菜单不会改微信底部栏。每个公众号一份 mp_menu。

保存即上线

没有草稿态。点保存就推到微信。回复素材规则和 自动回复 同构,点击后走 MpMessageService.sendOutMessage。

按本仓库 DO 生成的 ER。菜单是树,按账号隔离。

配置与操作 ​

走 菜单管理(2119)。权限 mp:menu:save、mp:menu:delete。选账号后编树:顶级 parentId 为 0,按钮 type 用微信字符串(click / view / miniprogram 等),点击类填 menuKey 和回复载荷。

点保存走 POST /save:先 menuCreate 推微信,成功后再重建本地 mp_menu。没有草稿态。清空 DELETE /delete?accountId= 先 menuDelete 再删库。改角色的 system_menu 不会改微信底部栏。开启见 公众号功能设计。

公众号菜单

本系统截图:公众号管理 → 菜单管理(/mp/menu)。点保存就推到微信,没有草稿。

相关篇 ​

联系我们

获取报价、演示和二开方案

微信咨询二维码

微信咨询

17156169080

添加时备注「RuoYi Office」

在线体验商业版