插件规范与结构

一、插件主目录
后台全部文件目录 weapp
前台开发文件目录 application/weapp
前台模板文件目录 template/weapp
 
二、插件文件夹名
采用大驼峰命名法,以大写字母开头,只能包含英文大小写字母、数字,可以是纯字母、字母数字组合。
比如:Demo 、Demo0001
系统会在初始化插件时,自动生成一套标准化插件结构与相关代码,包含简单的数据库(读、写、查、删),可在该基础上继续开发功能。
每一个插件结构相当于TP的一个分组模块,有TP基础的开发完全没问题;
 
三、插件目录结构
 
www WEB部署目录
├─... 此处省略其他目录
├─weapp 插件主目录(结构布局遵循CMS内核为基础,懂TP5就懂开发易优插件)
│ ├─Sample 子插件目录
│ │ ├─behavior 行为扩展
│ │ │ ├─admin 后台行为扩展目录
│ │ │ ├─home 系统前台行为扩展目录
│ │ │ └─weapp 插件前台行为扩展目录
│ │ ├─controller 插件控制器
│ │ ├─data 插件sql文件目录
│ │ │ ├─install.sql 安装数据库文件
│ │ │ └─uninstall.sql 卸载数据库文件
│ │ ├─logic 插件逻辑操作(每个文件名以Logic.php后缀结尾,比如:DemoLogic.php)
│ │ ├─model 插件模型类(每个文件名以Model.php后缀结尾,比如:DemoModel.php)
│ │ ├─template 插件后台模板目录
│ │ ├─validate 插件验证器目录
│ │ ├─vendor 第三方类库目录
│ │ ├─config.php 配置文件(必须遵循样本格式)
│ │ ├─html.php 页面缓存配置文件
│ │ └─route.php 路由配置文件(支持TP5本身的路由规则)
│ └─ ... 更多子插件目录

四、插件内置方法
$this->getWeappInfo() :插件配置信息
index():插件的第一入口
show():系统内置的钩子方法,如果该方法存在,系统默认在前台执行
doc():插件使用指南
beforeInstall():插件安装的前置操作(可无)
afterInstall():插件安装的后置操作(可无)
beforeUninstall():插件卸载的前置操作(可无)
afterUninstall():插件卸载的后置操作(可无)
beforeEnable():插件启用的前置操作(可无)
afterEnable():插件启用的后置操作(可无)
beforeDisable():插件禁用的前置操作(可无)
afterDisable():插件禁用的后置操作(可无)
 
五、插件sql规范
要执行的sql放置在插件的data目录,分别为install.sql与uninstall.sql两个文件。
install.sql:安装时运行的sql文件
uninstall.sql:卸载时运行的sql文件
两个文件的内容格式:
sql文件里的表名一定要遵循易优CMS插件规范,表前缀必须是(#@__weapp_),安装之后系统会自动把(#@__)替换成真实的数据库前缀。
表名 = 插件前缀+插件名_其他字符
比如:Demo插件的数据表名为 #@__weapp_demo、#@__weapp_demo_img