Discuz!使用问题、建议、BUG等请到论坛反馈以便获得及时帮助,大型问题建议走付费途径。

插件,是基于 Discuz! 论坛系统之上,设计开发的一种小程序或小方案,用来实现对论坛现有功能扩展和改进。由于 Discuz! 已具有相当完备的底层架构,因此插件并不需要具备很多深层的设计思想,也不需要很专业的开发人员,只要把想实现的功能与论坛的基本体系挂接起来,论坛就能拥有更加个性化的功能。

1、添加一个插件设置

进到后台 => 扩展 => 论坛插件,可以看到当前安装的插件,如下图。

点击“设计新插件”可以进入下图的所示的页面,根据提示写入:插件名称(name)、版权信息(copyright)、唯一标识符(identifier)。具体含义请根据页面中。如图所示:

2、配置插件

在新增加一个插件配置后,我们需要对插件的配置进行细节的配置。在上图中点详情,会看到如下图所示界面:

编辑插件模块 较之前的Discuz!版本略有不同。引入了模块类型和程序模块的概念,将菜单链接的方式简化了,只需要填入直接链接URL即可。如下图所示:

3、设置插件变量

创建新的插件以后,可以为插件创建可以使用的变量。您在二次开发当中会用到此功能。如下图所示:

添加两个变量,一个是“插件开关”,一个是“运行方式(选择)”。 配置类型分别为“开关”和“选择”,然后保存提交,点选“运行方式(选择)”的详细,可以为此变量添加扩展设置。如下图所示:

4、如何在插件中使用新的插件及变量(适合开发人员及高级编程人员)

刚刚添加的test_001插件,可以在“根目录/forumdata/cache”缓存目录找到plugin_test_001.php。当开发人员要使用插件的变量时。可以参考此文件下的配置信息即可

5、如何设置钩子

如果我们需要修改到 Discuz! 本身的代码,那么我们可以使用插件的钩子功能。如图所示:

点“编辑”,在打开的页面中,填写“钩子描述”和需要执行的“PHP代码”,如下图。然后点“提交”。

这样,一个钩子就添加成功了,可以在模板中通过 eval($hooks['hello'])或者在PHP程序通过$hooks['hello']调用。

{lang scrolltop}