Wecenter插件系统开发规范

fanta
fanta 这家伙很懒,还没有设置简介

6 人点赞了该文章 · 3000 浏览

1.命名规范

插件命名以wc_作为前缀+插件名,如插件test,即wc_test

2.目录新建

目录新建在根目录下plugin文件夹下,如插件名test,目录结构就是/plugins/wc_test/

3.目录结构

目录包含内容必须要有配置文件、核心类,非必要的有模型类、静态资源、第三方类、页面模板等,如test,则玩着目录如下

wc_test

|-config.php  配置文件

|-test.php   核心类

|-test_model  模型类

|-view     视图模板目录

|-static    静态资源目录

|-install.sql   安装sql

|-uninstall.sql  卸载sql

|-upgrade.sql  升级sql

4.配置文件

Config.php配置文件 返回一个多维数组,包含有:

name: 插件标识

title 插件标题名称

intro 插件介绍

author : 插件作者

version 插件版本

state  插件状态

config: 也是一个数组,包含所需的配置项,如:

  'config'=>[

  'ad_plugin_enable' =>

  array (

    'title' => '广告开启',

    'type' => 'radio',

    'value' => 'Y',

    'options' =>

    array (

      'Y' => '开启',

      'N' => '关闭',

    ),

  )

],

以上的配置config就是后台广告插件的配置显示效果,

'options' 对应的是配置项的值,

'value' 是默认值,

'type' 是配置类型,

'title' 是配置名称

常用的有textselect,radioCheckBox

ad_plugin_enable是开发者自己定义,调用的时候调用此键名即可

5.核心类

核心类同样继承自AWS_CONTROLLER,包含5个固定方法,即构造方法 install安装,uninstall卸载,enable启用,disable禁用,构造方法获取插件的配置和插件相关信息,安装、卸载、启用、禁用四个方法默认是调用系统的方法,也可以自定义,在方法里自行处理相关逻辑。

除了这5个方法之外,开发者可以自定义其他的方法进行调用。

6.模型类

模型类的定义名称需后接_model方可,如test_model,内部的定义与使用与model目录下的模型相同,

另注意一点,此处的模型名不可与model目录下的模型重名,如果重名,会去调用model目录下的模型,从而会导致找不到相关的方法一类的错误。

调用方法还是$this->model()进行调用。

6.staticview静态资源、视图目录

Staic目录存放css\js等静态资源

View 视图目可存放后台以及前台的视图模板

后台视图的要在目录下新建子目录admin,前台的模板直接放在view下即可,在核心类中,通过 PLUTPL::output('ad/banner');渲染页面,其中ad是插件名或者标识,banner是页面名称

后台的只需加上admin即可,如PLUTPL::output('ad/admin/edit');

7.安装、卸载、升级

安装、卸载、升级在后台都有相对应的操作,对应相应的sql执行即可。

8.插件调用

正常的调用只需用公共方法hook()方法调用即可,在后台或者其他的页面需要调用插件方法进行页面调用或方法的时候,可以通过doact方法,前台explore/doact  后台admin/plugin/doact  ,

添加广告按钮需要调用插件添加广告的方法,此处是超链接,可以通过admin/plugin/doact/?p=ad&a=edit进行传参调用,其中pa是必传的,p是插件名,a是方法名。

发布于 2019-06-14 13:31

免责声明:

本文由 fanta 原创发布于 WeCenter ,著作权归作者所有。

登录一下,更多精彩内容等你发现,贡献精彩回答,参与评论互动

登录! 还没有账号?去注册

暂无评论