插件是用于扩展系统的功能的一些独立“组件”。
## 功能定义
插件的定位是用于实现某些简单的显示及数据处理的功能扩展。所以我们的初衷是插件的开启关闭,不会影响原有数据。
为了管理的方便,我们在后台给插件默认提供了插件列表页,钩子列表,以及配置插件、快速创建插件结构、安装、卸载、启用停用、插件后台页面,方便大家定义管理插件相关的数据。
## 物理定义
位于站点根目录 wwwroot/Addons 下的一个类库,可以被系统的hooks函数访问到。
目录结构如以下(以自带的Editor插件为示范):
~~~
|-wwwroot
| |-Addons [所有插件目录]
| | |-Editor [插件目录]
| | | |-Controller [控制器目录,有URL访问的时候才需要,可选]
| | | | |-UploadController.class.php [插件控制器,名字可以不和插件名一样]
| | | |-config.php [配置文件, 有配置项的话可选]
| | | |-content.html [插件模板页面,可选]
| | | |-EditorAddons.class.php [插件定义和实现的文件,必须有!!]
| | | |-[adminlist.html、config.html] [这些模板可选,用于自定义插件的配置页和列表页]
~~~
目前仅介绍一下目录结构,在**插件开发**中将讲解每个文件如何定义。