插件规范与结构
一、插件主目录
后台全部文件目录 weapp
前台开发文件目录 application/weapp
前台模板文件目录 template/weapp
二、插件文件夹名
采用大驼峰命名法,以大写字母开头,只能包含英文大小写字母、数字,可以是纯字母、字母数字组合。
比如:Demo 、Demo0001
系统会在初始化插件时,自动生成一套标准化插件结构与相关代码,包含简单的数据库(读、写、查、删),可在该基础上继续开发功能。
每一个插件结构相当于TP的一个分组模块,有TP基础的开发完全没问题;
三、插件目录结构
![](https://www.eyoucms.com/uploads/181104/1-1Q1041HQ0910.jpg)
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
- 序言
- 基础使用
- 如何安装
- 安装 Eyoucms
- 本地安装运行环境
- 栏目管理
- 栏目类型介绍
- 如何管理栏目
- 如何设置栏目
- 页面设置
- 网站基本信息设置
- 内容管理
- 添加发布内容
- 发布内容管理
- 留言内容管理
- 后台指南
- 邮箱发送配置
- 配置支持生成静态功能
- 去掉URL中的index.php
- 企业认证小程序
- 留言模型验证码调用
- 通用微信小程序
- 留言表单如何使用上传功能
- 手机站域名的正确配置方式
- 文档评论插件
- 微信分享插件
- 百度分享插件
- 中文简繁体切换插件
- 蜘蛛访问统计插件
- ip访问限制插件
- 短信配置
- 微信扫码登录插件
- QQ登录插件
- 微信支付配置、网页授权、获取收货地址
- 文档定时发布插件
- 留言表单属性的手机号码、邮箱地址的格式验证
- 百度智能小程序
- 标签手册
- 全局标签
- arclist 文档列表
- channel 获取栏目列表标签
- channelartlist 当前频道循环标签
- type 指定栏目调用标签
- include 导入指定模板文件标签
- arcview 单条文档调用标签
- position 面包屑标签
- assign 模板文件中定义变量标签
- empty 判断变量是否为空标签
- notempty 判断变量不为空标签
- foreach 数据循环输出标签
- volist 数据循环输出标签
- if 条件判断标签
- switch 条件判断标签
- compare 比较标签
- adv 广告列表标签
- load 加载资源文件标签
- global 全局配置变量标签
- field 获取channelartlist标签的字段值
- tag TAG调用标签
- searchform 搜索标签
- 标签常用函数
- flink 友情链接
- weapp 网站应用插件标签
- range 范围判断标签
- for 数据循环输出标签
- ad 单条广告调用标签
- attribute 栏目属性列表
- user 登录注册标签
- diyurl 内置URL调用标签
- php php标签
- 列表标签
- list 列表数据标签
- pagelist 列表分页标签
- arcpagelist 瀑布流分页列表
- screening 筛选标签
- 内容标签
- arcclick 文档浏览量
- guestbookform 留言表单标签
- prenext 获取上一篇、下一篇内容
- downcount 文档下载次数
- likearticle 相关文档
- 更多附加标签
- 装修标签
- ui 模板可视化标签
- uitext 纯文本可视化标签
- uihtml 带html富文本可视化标签
- uiupload 图片上传可视化标签
- uitype 单个栏目可视化标签
- uiarclist 文档列表可视化标签
- uichannel 栏目列表可视化标签
- 多语言标签
- language 多语言列表标签
- lang 语言包变量标签
- 插件开发
- 易优CMS数据字典
- 易优CMS目录结构
- 插件规范与结构说明
- 插件common.php全局函数文件
- 插件config.php配置文件
- 插件html.php页面缓存配置
- 插件route.php路由配置
- 插件制作教程指南
- 模板制作
- 准备工作
- 标签用法
- 页面引用