微擎在安装或卸载模块时会根据manifest.xml生成(或删除)数据库中相应记录,并执行manifest.xml里指定的脚本。

manifest.xml文件内容详细介绍如下:

manifest - xmlns *(新增)*
用来为此模块XML的命令空间,此处必须填写"http://www.we7.cc".

manifest - versionCode
用来说明当前模块适用于哪个版本的微擎, 用来保证模块的兼容性. 多个支持的版本请使用逗号隔开.

manifest - application 用来定义模块的基本设置属性
manifest - application - setting 用来说明此模块是否有针对模块的设置项, 设置项可以保存此模块需要的配置参数(此参数针对不同的公众号分别保存)

manifest - application - name
模块的名称

manifest - application - identifie
模块标识符, 应对应模块文件夹的名称, 微擎系统按照此标识符查找模块定义

manifest - application - version
模块当前版本, 此版本用于模块的版本更新

manifest - application - type *(新增)*
模块的类型,方便在左侧菜单中归类与显示, 目前分为 business(主要业务),customer(客户关系),activity(营销及活动),services(常用服务及工具),other(其他)

manifest - application - ability
模块功能描述, 使用简单的语言描述模块的作用, 来吸引用户

manifest - application - description
模块详细描述, 详细介绍模块的功能和使用方法

manifest - application - author
模块的作者, 留下你的大名吧

manifest - application - url
模块的发布页, 可以通过这个url来访问你的模块最新情况

manifest - platform
用来定义模块用以处理公众平台消息的设置项

manifest - platform - subscribes
消息订阅器定义(消息订阅器提供了一种处理公众平台消息的方式, 可以接受到指定类型的消息, 来进行分析和统计, 不能用以处理消息返回结果. 这种处理是并行的, 同一个消息会被每一个订阅它的模块接收到)

manifest - platform - subscribes - message
定义需要被订阅器订阅的消息类型, 这里的消息被 WeModuleReceiver 处理

manifest - platform - handles
消息处理器定义(消息处理器用于接收公众平台的消息, 并返回相应的处理结果. 这种处理是互斥的, 同一个消息只能从一个模块返回处理结果)

manifest - platform - handles - message
定义需要被处理器处理的消息类型, 这里的消息被 WeModuleProcessor 处理

manifest - platform - rule *(变更)*
定义此模块是否需要规则触发

manifest - platform - rule - embed
当前模块进行消息处理时需要定义规则, 是否使用规则路由. (使用规则路由必须要能处理text类型消息, handles节点中必须包含 )

manifest - bindings *(新增)*
定义此模块的封面,管理菜单,微站菜单及规则扩展菜单

manifest - bindings - cover
定义模块的封面入口,封面入口为单条图文信息即是模块需要对用户开放的入口地址.

manifest - bindings - cover - call
定义模块动态扩展菜单项, 此值对应 WeModuleSite 类中的方法, 返回的值结构与entry相同, 将成为此节点的菜单项.

manifest - bindings - cover - entry
模块绑定菜单的定义结构. 需要定义 title - 操作的名称, do - 模块操作入口, state - 附加的用户参数(定义于WeModuleSite)

manifest - bindings - rule
定义规则的附加操作, 每个entry代表一个附加操作.

manifest - bindings - menu
定义模块在左侧本模块菜单下拉列表中的附加菜单操作, 每一个entry代表一个菜单操作.

manifest - bindings - home
定义模块在微站首页的扩展菜单项, 每一个entry代表一个微站首页菜单项.

manifest - bindings - profile
定义模块在微站个人中心的扩展菜单项, 每一个entry代表一个微站个人中心菜单项.

manifest - bindings - shortcut
定义模块在微站快捷菜单的扩展菜单项, 每一个entry代表一个微站快捷菜单项.

manifest - install
安装执行脚本, 这里支持两种形式: php脚本和sql语句. 如果安装时只需要写入数据库相关内容, 可以在此直接定义sql语句. 也可以使用php文件, 例如: install.php 代表执行模块定义目录下的 install.php

manifest - uninstall
卸载执行脚本, 参上

manifest - upgrade
升级执行脚本, 参上

举一个栗子:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns="http://www.we7.cc" versionCode="0.6">
<application setting="false">
<name><![CDATA[知晓]]></name>
<identifie><![CDATA[my_test]]></identifie>
<version><![CDATA[1.0]]></version>
<type><![CDATA[business]]></type>
<ability><![CDATA[知晓]]></ability>
<description><![CDATA[知晓]]></description>
<author><![CDATA[mingquan]]></author>
<url><![CDATA[http://bbs.we7.cc/]]></url>
</application>
<platform>
<subscribes>
</subscribes>
<handles>
</handles>
<rule embed="false" />
<card embed="false" />
<supports>
<item type="wxapp" />
</supports>
</platform>
<bindings>
<menu>
<entry title="知小管理" do="zhixiao" state="" direct="false" /> </menu>
</bindings>
<permissions>
</permissions>
<install><![CDATA[
-- ----------------------------
-- Table structure for ims_zhixiao_course
-- ----------------------------
DROP TABLE IF EXISTS `ims_zhixiao_coursen`;
CREATE TABLE `ims_zhixiao_course` (
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`classname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '课程名',
`englishname` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '英文名',
`title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '标题名称',
`image` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '图片连接地址',
`create_time` varchar(0) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 24 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '每日推理问题选项表' ROW_FORMAT = Dynamic; -- ----------------------------
-- Records of ims_zhixiao_course
-- ----------------------------
INSERT INTO `ims_zhixiao_course` VALUES (2, '微信小程序开发课程', 'MinTraining', '微信小程序开发系列培训共10课时', 'http://localhost/weiqing/attachment/images/1/2018/10/cpD17ZCbTb99X2dpXBQTtp56AxQ2Tv.jpg', '');
INSERT INTO `ims_zhixiao_course` VALUES (3, '水平测试', 'WeExam', '第一届微信小程序开发法水平测试', 'http://localhost/weiqing/attachment/images/1/2018/10/K62QS4VS45IsDSUSk44SVj562VvJju.png', '');
INSERT INTO `ims_zhixiao_course` VALUES (4, 'WeGeek大赛报名', 'WeGeek', '第一届微信小程序开发大赛参赛报名', 'http://localhost/weiqing/attachment/images/1/2018/10/Xz3fQ3fQFMU6mNQ2qM8bduoBKOUfDm.jpg', '');
INSERT INTO `ims_zhixiao_course` VALUES (5, '', '知晓云', '小程序开发的强力后盾提供便捷云服务', 'http://localhost/weiqing/attachment/images/1/2018/10/cpD17ZCbTb99X2dpXBQTtp56AxQ2Tv.jpg', '');
]]></install>
<uninstall><![CDATA[
DROP TABLE IF EXISTS `ims_mrtl_option`;
]]></uninstall>
<upgrade><![CDATA[]]></upgrade>
</manifest>

微擎模块的安装文件manifest.xml的更多相关文章

  1. PHP文件解密服务,微擎微赞模块解密,微擎模块解密

    支持Zend/PHP5.3, Zend/PHP5.4, Zend/PHP5.5, Zend/PHP5.6解密 支持IonCube8, IonCube9, IonCube10解密 支持魔方一代,魔方二代 ...

  2. manifest.xml微擎系统模块的安装文件内容

    微擎在安装或卸载模块时会根据manifest.xml生成(或删除)数据库中相应记录,并执行manifest.xml里指定的脚本. manifest.xml文件内容详细介绍如下: manifest - ...

  3. 玩转微信2次开发1_交互通信api.php(微擎版)

    在2次开发中,涉及到比较多的也比较繁琐的就是服务器和微信服务器的交互 用户在公众号里操作回复关键词都会让微信服务器和开发者的服务器进行交互 用户一旦关注了某某公众号--微信后台会去查询该公众号是否连接 ...

  4. 微擎site.php函数以及路由连接

    任务1: 微擎模块设计: module.php 规则类: 会调用module.php manifest.xml中业务菜单对应的模块 如果在site.php中没有相应的函数 比如 /web/index. ...

  5. 微擎系统BUG漏洞解决方法汇总(原创)

    微擎微赞系统BUG漏洞解决方法汇总 弄了微擎系统来玩玩,发觉这个系统BUG还不少,阿里云的提醒都一大堆,主要是没有针对SQL注入做预防,处理的办法基本都是用转义函数. 汇总: 1. 漏洞名称: 微擎任 ...

  6. 微擎系统BUG漏洞解决方法汇总

    微擎微赞系统BUG漏洞解决方法汇总 弄了微擎系统来玩玩,发觉这个系统BUG还不少,阿里云的提醒都一大堆,主要是没有针对SQL注入做预防,处理的办法基本都是用转义函数. 汇总: 1. 漏洞名称: 微擎任 ...

  7. 安装文件制作工具Wix概念快速入门

    前言 Wix==Windows installer XML 顾名思议. 用于制作WINDOWS安装文件的XML格式的描述文件. 因为其实现方式为基于声明的方式,而非命令的方式. 特整理一下其相关的概念 ...

  8. 【php+微擎】微擎学习相关帮助推荐

    我刚接触微擎没多久,学习中遇到很多问题,走过很多弯路.遇到很多问题在网上也查不到,因此想把我自己的学习历程写出来供新手们参考(本人还是菜鸟一枚,文中错误之处,敬请指正!) 我以一个新手小白的角度来帮助 ...

  9. 微擎-T

    微擎菜单栏对应的数据库表 ims_modules_bindings 小程序前端uniacid的配置,微擎后台进入小程序应用时鼠标移动至管理查看链接即可(不点击) ims_account_wxapp微擎 ...

随机推荐

  1. 搭建SpringCloud-Eureka 注册中心以及服务提供与调用

    纸上得来终觉浅,绝知此事要躬行啊~果然看着很easy,自己搞起来就是各种坑~各位看官,容我慢慢道来~ 关于springcloud是什么我就不废话了~ Eureka  Eureka(原来以为是缩写,原来 ...

  2. 实战经验丨CTF中文件包含的技巧总结

    站在巨人的肩头才会看见更远的世界,这是一篇技术牛人对CTF比赛中文件包含的内容总结,主要是对一些包含点的原理和特征进行归纳分析,并结合实际的例子来讲解如何绕过,全面细致,通俗易懂,掌握这个新技能定会让 ...

  3. 图解Java线程的生命周期,看完再也不怕面试官问了

    文章首发自个人微信公众号: 小哈学Java https://www.exception.site/java-concurrency/java-concurrency-thread-life-cycle ...

  4. sau交流学习社区--在element-ui中新建FormData对象组合上传图片和文件的文件对象,同时需要携带其他参数

    今天有一个坑,同时要上传图片和文件,而且图片要展示缩略图,文件要展示列表. 我的思路是: 首先,只上传附件照片,这个直接看ele的官方例子就行,不仅仅上传附件照片,还同时上传其他参数. 然后,再做上传 ...

  5. Python函数小节

    定义函数时,默认参数必须指向不变的对象 参数为可变对象时,正常调用的时候,结果没有问题,但是当使用默认参数的时候,结果就会和理想的有差距. In [78]: def add(L=[]): ...: L ...

  6. 只有一百行的xss扫描工具——DSXS源码分析

    目录 0x00 废话 0x01 扫描逻辑 第一个逻辑:dom型xss 第二个逻辑:经过后端的xss 0x02 总结 0x00 废话 DSXS是一个只有一百行代码的xss扫描器,其作者刚好就是写sqlm ...

  7. xamarin开发android收集的一些工具

    xamarin开发android收集的一些工具 工欲善其事,必先利其器,从16年下半年开始做xamarin相关的开发,平时使用的一些工具和google插件给大家分享一下,都有下载地址,持续更新. Vi ...

  8. 选中FeatureLayer元素并高亮显示

    点击FeatureLayer要素会弹出popup弹出框以显示要素的相关内容.这个例子实现点击要素,选中并高亮显示.例子使用ArcGIS API for JavaScript 4.8. 一.代码框架 & ...

  9. Mongo之架构部署(Replica Sets+Sharding)

    一.环境 要构建一个 MongoDB Sharding Cluster,需要三种角色: •Shard Server: mongod 实例,用于存储实际的数据块. •Config Server: mon ...

  10. windows 无法启动网络发现

    1.先启动三个服务,按顺序启动(有依存关系),都改为自启动 Function Discovery Resource Publication SSDP Discovery UPnP Device Hos ...