Discuz插件编写教程

Discuz 插件编写教程 :

1,开始编写一个新插件,请首先打开 config/config_global.php 文件,在文件结尾添加以下代码开启插件设计者模式。

$_config['plugindeveloper'] = 1;

2,进入到discuz管理员后台,点击应用->插件->设计新插件

唯一标识符要与/source/plugin/插件文件夹名/要相同)。

3,点击“设计->模块”定义插件接入点:编写的插件要接入到系统,必须要定义接入点。

(程序模块的名称必须跟/source/plugin/插件文件夹名/ 下的文件名相同

链接URL里的id=程序模块的名称,它是唯一对外访问的接口)

4,点击设计->变量”,定义插件所要使用的变量(设置参数)。在程序里可以通过

$_G['cache']['plugin']['插件名']['参数名']取后台设置的变量值。

如果后台配置了变量,会在插件列表生成一个设置链接,如果使用其他自定义的管理链接,可在“设计->模块”添加,添加后系统会自动在该地方生成。

5,点击设计->导出可以导出该插件的xml文件。

 

后台设计插件总结:

1,通过后台设计新插件功能,设计好插件的名称,插件的插入点(变量可以在开发过程逐渐添加)。

 

2,根据后台设计新插件,在程序目录/source/plugin/ 建立文件结构。

二、常用的调用方法

1,调用设置的插件变量

$_G['cache']['plugin'][插件名][参数名];

2,调用table文件夹下的表操作。

C::t('#插件名#类名(文件名)')->fetch_all_test();

3,判断用户是否登录

if(!$_G['uid']) {

         showmessage('not_loggedin', NULL, array(), array('login' => 1));

}

4,外部访问都是通过“设计->模块”中定义的模块来操作的。

如果要实现不同的操作,需要在一个模块文件中使用不同的action区分。

plugin.php?id=插件名&参数名=参数值。

获取这个URl的所提交数据使用:$action = $_G['gp_参数名'];(注意“gp不能少)

5,调用模板:

include template(插件名:模板名');

 

 

猜你喜欢

转载自cjxixi.iteye.com/blog/1961708