hemaPHP所有插件都是存放在`/addons`目录,一个插件一个目录,目录名必须和插件标识相同,且全部为小写,不允许出现大写或下划线等特殊符号。
~~~
test //插件标识名称
├── app //此文件夹中所有文件会覆盖到根目录的/app文件夹(可无)
├── assets //此文件夹中所有文件会复制到/public/addons/test文件夹(可无)
├── controller //此文件夹为插件控制器目录(可无)
├── model //此文件夹为插件模型目录(可无)
├── view //此文件夹为插件视图目录(可无)
├── uni_app //此文件夹为小程序代码存放目录(可无)
├── library //此文件夹为插件类目录(可无)
├── Plugin.php //此文件为插件核心安装卸载控制器(必需存在)
├── config.php //插件配置文件,我们在后台插件管理中点配置按钮时配置的文件(可无)
├── local.ini //离线安装配置文件,一行代码 name="test"(可无)
└── .database //插件数据库安装文件,此文件仅在插件安装时会进行导入(可无)
~~~
其中的`app`文件夹会覆盖到根目录,这个文件夹主要用于我们后台管理功能的开发,我们可以先在后台开发好对应的管理功能后,再将对应的功能打包进插件即可,hemaPHP在插件安装和卸载时会自动进行文件冲突检测,如果遇到冲突的文件会提醒用户是否进行覆盖或删除。
`assets`这个文件夹很关键,hemaPHP会将`assets`中的所有文件夹和文件复制到`/public/addons/插件标识/`文件夹中去,`assets`文件夹中的所有文件不会进行文件冲突检测,`/public/addons/插件标识/`这个目录下的文件。因此在开发视图时和发布插件时注意这里路径的使用与替换。
`controller、model、view`和`library`这四个文件夹是我们插件前台功能的MVC部分和扩展类,这部分文件夹不会复制或移动到其它位置。
`Plugin.php`这个文件是插件的核心文件,我们可以在这个文件中编写插件安装或卸载时执行的脚本,或者在此插件中编写菜单的生成或删除,同时插件的行为方法也是编写在此文件中的,插件所支持的行为事件会在后面讲到。此文件命令规则为插件标识首字母大写。
`config.php`这个文件是插件的配置文件,我们在后台插件管理中点配置按钮时会保存在此文件,`.config`详细使用方法和说明请参考《配置》章节。
`.database`这个文件中只能是SQL语句,同时在此文件中可以使用`__PREFIX__`表示数据库表前缀,hemaPHP在安装导入SQL时自动进行替换。`.database`的详细使用方法请参考《数据库》章节
## 温馨提示
`app`不允许新增其它的模块,只允许使用自带的`common、api、store`模块
插件标识名称:不允许与现有的插件重名
- 项目介绍
- 框架结构
- 目录结构
- 安装教程
- 安装必读
- 部署服务器
- 系统安装
- 微信平台配置
- 对接微信平台
- 其它配置
- 微信扫码登录
- 腾讯地图KEY
- 站点公众号
- 公众号模板消息
- 插件操作
- 插件结构
- 插件部署
- 插件配置
- 操作手册
- 框架升级
- 搭建uni-app编译环境
- 设置代开发小程序
- 创建小程序管理端
- 发布SaaS小程序模板
- 给商家推送小程序模板
- 商户上线小程序
- 发布普通微信小程序
- 编译发布H5
- 商户和站点用同一个公众号
- 小程序设置普通二维码规则
- 微信支付设置
- 常见问题
- 名词解释
- 商家获取账号密码
- open_basedir报错
- 发布上线小程序
- 微信返码报错大全
- 平台注册的小程序登录公众平台
- 小程序模板报错集合
- 设置公众号模板消息
- 云叫号器
- 接口请求规则
- 公共请求参数
- 返回数据结构
- 设备管理接口
- 下发消息接口
- 微信配网
- 相关文档