重温一遍Discuz插件机制

这周开发QQ互联一个相关插件,又整个复习了一遍Discuz插件机制。
话说当年进康盛就是因为会写几个插件,当然还得感谢某人的引进。
这久没碰到插件,基本上忘的差不多了,看着别人的插件,参考这Discuz文档又复习了一遍。

通过这次复习,关于互联插件的分享实现方式也搞清楚了,之前一直有块疑问,哈哈。

QQ互联的分享:
点击帖子页的空间分享按钮,这里以Discuz官方为例说明。
链接地址为:

http://www.discuz.net/home.php?mod=spacecp&ac=plugin&id=qqconnect:spacecp&pluginop=share&sh_type=1&thread_id=帖子ID&后面参数省去

可以看到这里是通过家园的插件机制实现的,这里进入到下面的文件看家园的插件机制。
source\include\spacecp\spacecp_plugin.php

include pluginmodule($_G['gp_id'], $pluginkey);

pluginmodule函数在function_core.php文件定义,引入插件的PHP执行文件。

这里一直有个疑问,插件的模板是如何引入的呢?不要急,下面看spacecp_plugin.php自己的模板。
template\default\home\spacecp_plugin.htm


熟悉吧,这里就是引入插件的模板文件。

QQ互联的遗留问题是没在插件的PHP执行文件里找到输出,仅是定义code和message,但是前台提交分享后却出现了相应的提示,这里一直没搞明白。
最后看到插件的模板文件就一目了然了。
source\plugin\qqconnect\template\spacecp.htm




这次复习还是有收获的~

标签: none

添加新评论