插件简介
「分享插件」通过 thread_postlist_before 钩子挂载到帖子详情页的回帖列表上方,自动生成一组社交分享按钮。用户浏览帖子时,无需离开页面即可将当前帖子分享到 QQ、QQ空间、微博、微信,或一键复制链接分享到任意平台。
插件会自动提取当前帖子的标题和绝对 URL,拼装好各平台的分享链接。微信分享通过弹出二维码弹窗实现,用户扫码即可在手机端打开并转发。复制链接功能则将「帖子标题 + 链接 + 站点名称」组合为一段文本写入剪贴板,方便粘贴到聊天工具中。
整个插件仅包含一个钩子文件和一份配置,不覆盖任何系统模板,不依赖其他插件,安装即生效。
分享渠道
插件提供五个分享入口,覆盖国内主流社交平台:
调用 QQ 互联分享接口,将帖子标题与链接传入,用户可在 QQ 好友或群聊中直接发送。
QQ空间
通过 QQ空间一键分享接口,用户可将帖子以图文形式发布到自己的 QQ空间动态。
微博
调用微博分享接口,用户可将帖子链接和标题填入微博发布框,快速生成一条带链接的微博。
微信
点击后弹出 Bootstrap 模态框,通过 qrserver.com 接口生成当前页面的二维码图片,用户用微信扫码后在手机端打开并转发。二维码采用懒加载,首次点击时才请求生成。
复制链接
将「帖子标题 + 换行 + 绝对链接 + 换行 + 出处:站点名称」的组合文本写入剪贴板。优先使用 navigator.clipboard API,不支持时自动降级为 execCommand 方案。复制成功后弹出 Toast 提示。
技术规格
插件元信息与挂载关系一览,均来自 conf.json。
插件名称 | 分享插件 |
版本号 | 1.0.0 |
适用 BBS 版本 | 1.1 及以上 |
类型 | plugin |
挂载钩子 | thread_postlist_before.htm(权重 10) |
覆盖文件 | 无 |
前置依赖 | 无 |
分享渠道 | QQ · QQ空间 · 微博 · 微信 · 复制链接 |
UI 框架 | Bootstrap 5 · Tabler Icons |
二维码服务 | api.qrserver.com(仅微信分享时调用) |
核心逻辑
钩子文件中的数据处理流程如下:
第一步,从 $thread 全局变量中提取帖子 URL 和标题,结合 $_SERVER 拼出绝对链接,并用 rawurlencode() 编码 URL 和标题,供各平台分享接口使用。
第二步,从 $conf 或 $g_setting 中读取站点名称,拼入复制链接的文本末尾作为出处标注。
第三步,渲染分享按钮组,每个按钮的 href 指向对应平台的分享 API 端点,传入编码后的 URL 和标题参数。微信按钮和复制按钮通过 JavaScript 绑定点击事件。
安装步骤
上传插件目录
将 leostudio_fenxiang 整个文件夹上传至论坛的 plugin/ 目录下,确保 conf.json 与 hook/ 目录位于该文件夹根层。
后台安装启用
进入论坛后台「插件管理」,在未安装列表中找到「分享插件」,点击安装并启用。
查看效果
打开任意帖子详情页,分享按钮组将出现在回帖列表上方。如需卸载,在后台禁用并删除即可,页面恢复原状。

版本:v1.0.0
适用版本:1.1
开发者:leostudio


