ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### **理解插件的含义** 先通读《插件开发指南》,理解插件和钩子的含义,以及插件的安装、执行、配置、卸载流程。 ### **弄清自己待开发的插件需求-要完成的逻辑业务** 问自己几个问题: 1.插件的基本信息(名称、标识、描述、状态、作者、版本)是哪些 2.插件的用途是扩展显示还是控制数据 3.插件对使用控制器是否有要求,要不要单独的数据表(要调用插件的模型) 4.插件要用哪些钩子、一个还是多个 5.插件需要配置不,要的话,有哪些选项,要不要用分组,要不要自定义配置显示模板 6.插件需要后台不,默认显示数据,还是高级后台(有自己的管理界面和详情等) ### **快速创建插件,进行插件的完善** 进入“扩展”-》“插件管理”点“快速创建”进入创建阶段,填写基本信息,按照自身的需求、想好的问题勾选适当的选项。 配置目前还没做到可视化,大家先默认创建好文件,然后去文件里修改,都是数组,参照“插件后台开发”里的配置说明。 ### **例子** 首先清楚插件就是符合一定规范拥有一定目录结构的类文件。 然后清楚自己要开发的插件的要求,在什么位置显示、是否有配置文件、是否需要外部url访问、是否需要后台显示。 接下来我们就用后台快速开发一个Example插件示范。 首先,进入后台->扩展->插件列表->快速创建。会出现一个如下的页面。 ![2015-08-04/55c07e26addd0](https://box.kancloud.cn/2015-08-04_55c07e26addd0.png) 由于仅作简单的示范,我们不需要配置文件和外部控制器,都用默认的。钩子我们选‘documentDetailAfter’;最新版已经支持多选了。 可以点“预览”按钮看下将要生成的类文件,如下图: ![2015-08-04/55c07e6d9b09a](https://box.kancloud.cn/2015-08-04_55c07e6d9b09a.png) 点确定后,出现“创建成功”,并且列表里出现“示列”这个插件表示插件已经创建成功了。 然后我们可以看见生成的类文件 documentDetailAfter方法里什么都没有。我们在里面输出点文字,见下图: ![2015-08-04/55c07ec426f56](https://box.kancloud.cn/2015-08-04_55c07ec426f56.png) 其实和我们开发widget方法没啥太大区别。只不过这里前台用hook函数调用类里的钩子方法。 因为本产品使用了命名空间,所以插件类的引入需要通过命名空间的写法,才能正确自动加载类。而我们的快速创建就是为你们指定好插件定义信息后,自动创建一些规范的目录文件。所以你们只需要考虑插件的一些信息即可。 如果需要外部url 访问插件里的控制器。需要用addons_url(‘插件名://控制器名/方法’) 这样访问控制器。控制器里必须继承Home/AddonsController类。不能继承后台的。那个里面很多方法插件用不到,是为后台所定制的。要使用,只需在创建时候勾选‘是否需要外部访问’,就会自动创建控制器目录和文件,还有Model目录。然后自己按需修改吧。