discuz插件开发简易教程(三)——模块的简单应用

discuz插件开发简易教程(三)——模块的简单应用

前置阅读:

在之前的文章中,为大家介绍了如何创建DZ插件,以及插件设计的重要概念——模块。

这篇文章通过模块应用中的一个简单案例,方便大家理解模块的作用。

discuz插件开发简易教程(一)——设计新插件https://blog.csdn.net/weixin_45828020/article/details/143745823discuz插件开发简易教程(二)——插件设计之“模块”https://blog.csdn.net/weixin_45828020/article/details/143747583

正文开始

首先我在DZ后台创建了一款名为“测试插件的”新插件。(如何创建新插件参考上面的链接)

唯一标识符(identifier)为:test_plugin

然后进入模块设计,可以看到,此时还没有模块,我们开始对插件添加新的模块。

一、添加模块——主导航项目

主导航项目说明:可在主导航栏增加一个菜单项,可自主指派菜单链接的 URL,也可以调用插件的一个模块,模块文件名指派为 source/plugin/插件目录/插件模块名.inc.php”

1.创建主导航项目模块

提交后,在首页的主导航就出现了刚才创建的导航链接。

如果没有正常显示,可能需要在后台执行更新缓存操作后再回到首页刷新,如下图。

2.创建需要引入的脚本文件

在首页点击刚刚创建好的“测试导航”链接,会出现错误提示,因为此时没有需要引入的脚本文件。

那我们就需要根据提示,在插件目录下创建一个名为 test_nav.inc.php 的脚本文件。然后随便写入一些PHP语句。

说明:

test_nav.inc.php 文件中的 "inc" ,即 include ,代表“引入”、“包含”的意思, 在discuz中,以这个格式命名的脚本文件都是需要在某处引用的文件。test_nav 则是刚才创建模块时填入的程序模块名。

echo 'hello,这是一个导航模块'.'
';

echo '你可以在这里写一些具体的应用';

?>

再回到首页刷新,可以发现内容可以正常显示。说明脚本已正常运行。

通过观察“测试导航”的URL,我们就可以知道访问(调用)插件模块(页面)的具体链接格式。即使将来我们创建的模块不是导航项目,也有办法知道插件模块的访问(调用)链接。

在这个案例中,我的链接是:discuz:8080/plugin.php?id=test_plugin:test_nav 说明如下:

discuz:8080/ :本地服务器的网站地址。具体以你自己的为准。plugin.php :插件入口。固定格式为 plugin.php?id=插件名称(标识符)test_plugin : 你创建的唯一标识符(identifier)test_nav : 模块名称

也就是说,访问插件模块的链接格式为:

域名/php.php?id=插件标识符:模块名

注意:链接中的问号(?)和冒号(:)要在英文输入法下输入。

二、验证插件模块访问(调用)链接

我们创建一个非导航模块,来验证一下插件模块访问链接格式。

模块类型选择:程序脚本——页面嵌入-普通版。输入 test_hook。然后提交。

对了,记得要创建一个对应的脚本文件:test_hook.inc.php。

// test_hook.inc.php 的演示代码

echo 123;

?>

验证:

验证成功!

在实际的DZ插件开发中,你不一定需要向外暴露这个链接,如:当你需要一个模块作为API接口时,这个链接就可以用于调试数据的处理或其他功能。

结语

本次分享到此结束,至此我们就了解了插件模块的简单应用。如果这篇分享对你有帮助,请帮忙点个赞。下一篇分享,我会和大家介绍DZ插件开发页面嵌入点(也称钩子,HOOK)的概念。感兴趣的朋友可以关注一下。

相关推荐

手机忘记密码/平板忘记密码/忘记锁屏密码
Bet体育365提款不到账

手机忘记密码/平板忘记密码/忘记锁屏密码

📅 07-13 👁️ 4260
客服中心
Bet体育365提款不到账

客服中心

📅 07-09 👁️ 7844
隆重介绍:坦克世界Plus
Bet体育365提款不到账

隆重介绍:坦克世界Plus

📅 07-14 👁️ 6469
tf口红多少钱一支?tf口红专柜价格
365骑士版app下载

tf口红多少钱一支?tf口红专柜价格

📅 07-03 👁️ 3487
fps高好还是低好
365骑士版app下载

fps高好还是低好

📅 07-17 👁️ 9777
怎样才能养成安全行为习惯?
365bet大陆官网

怎样才能养成安全行为习惯?

📅 07-11 👁️ 4249