## 插件开发流程
官方插件介绍文档:http://www.kancloud.cn/thinkcmf/doc/266543
插件是CMF5中重要的一个功能,对于一个长期需要升级的项目来讲,利用插件,尽可能少的不修改CMF核心代码这个是最合理。那么可以在平时的开发过程中将各种功能都做成相应的插件,如幻灯片,友情连接啊,统计啊等等。
一般来讲,插件开发分为以下几个步骤
#### 一、创建对应的插件目录(插件名称)和文件
├─PluginsName 插件根目录,插件名称
│ ├─view 插件视图目录,可以自定义创建一个或多个前端模板,同时支持include等包含文件
│ │ └─assets 插件资源目录,主要包括插件用到的js,css,images
│ │ │ └─css
│ │ │ └─js
│ │ │ └─images
│ │ └─widget.html 前端展示页面
│ ├─lang 插件语言包,类似于前端模板的lang
│ ├─model 插件数据表模型,建议创建数据库的时候命名规范“表前缀_plugin_tablename”
│ ├─controller 插件控制器目录,实现功能的各类控制器,提供外部访问
│ ├─PluginsNamePlugin.php 插件类主文件
│ ├─config.php 插件设置变量配置文件
#### 二、实现功能
个人理解的功能实现主要是包括数据库表和模型,变量,和控制器代码这及部分,针对每个功能均不相同,我们通过下面的实例来进行说明。
#### 三、钩子挂载
系统自带了一堆的钩子,在后台的插件管理-钩子管理中进行管理
- 序言
- 最新更新
- 准备工作
- 程序安装
- 常见问题
- 验证码失效
- redis报错
- 邮件发送
- 项目部署
- 全局配置
- 虚拟主机配置
- 数据库配置
- 模板管理
- 前端开发
- 模板文件配置
- 模板变量
- 模板变量类型
- 模板变量数据源
- 模板控件
- 导航制作
- 导航标签
- 子导航标签
- 幻灯片制作
- 文章列表
- 非标签方式
- 模板配置文件配置列表
- 面包屑
- 友情链接
- 获取缩略图
- 获取组图
- 获取附件
- 全局变量
- 公共页面制作流程
- 首页制作流程
- 顶部导航
- 首页幻灯片
- 关于
- 服务
- 产品
- 新闻
- 底部导航
- 底部版权
- 返回顶部
- 在线客服
- 单页制作流程
- 单页模板制作
- 栏目页制作流程
- 文章列表栏目页
- 图文列表栏目页
- 图片列表栏目页
- 指定分类栏目页
- 右侧栏目列表
- 详细页制作流程
- 详细页模板制作
- 功能开发
- 开发功能列表
- 原功能修改
- 函数扩展
- 获取当前和子栏目ID
- 功能扩展
- 表单功能
- 固定字段表单
- 表单的提交
- 表单的删除
- 表单HTML模板
- JSON数据表单
- 前台文章发布
- Ueditor的配置
- 后台扩展编辑器
- 会员扩展
- QQ互联实现
- 插件开发
- 后台登录插件
- 创建目录及配置文件
- 创建插件控制器
- 创建插件展现模板
- 留言板插件
- 创建目录及配置文件
- 创建插件控制器
- 创建数据库
- 表单字段过滤
- 前台控制器实现
- 前台页面实现
- 后台控制器实现
- 后台页面实现
- 留言板多语言
- 留言板插件下载
- 多语言独立模板切换插件
- 创建目录及配置文件
- 插件控制器实现
- 多语言切换插件下载
- 产品相册展示插件
- 插件控制器实现
- 前端模板实现
- 产品展示插件下载
- 扩展后的系统升级
- 应用开发
- 自定义函数
- 自定义标签
- 新增应用
- 创建数据库表
- 创建应用目录
- 模型初始化
- 后台菜单入口
- 后台项目分类页实现
- 分类页控制器
- 分类页模板
- 分类的添加
- 验证器规则实现
- 模型中写数据库实现
- 分类的修改
- 分类的删除
- 后台项目首页实现
- 列表页控制器
- 列表页模板
- 项目的添加
- 项目添加验证器
- 模型中写数据库实现
- 标签的添加
- 项目的编辑
- 项目的删除
- 应用模板
- 源码下载
- 其他相关
- CMF5.1采用Redis缓存
- 启用redis
- redis缓存实例