FIT2CLOUD
BBS 社区 的图标

BBS 社区

370
59

轻量社区论坛,支持帖子、问答与公告的发布、分类与审核。

1.0.0
TimOxO 发布于

1.0.0

最新
>=2.25.0

🎉 首个版本发布!

为 Halo 提供社区论坛功能:讨论 + 问答 + 公告 + 两级分类,适合博客站旁的隔离社区。

在线演示blog.timxs.com/bbs(同时是互动增强的演示插件——帖子列表 / 详情已接入装扮与用户卡)

✨ 功能特性

  • 帖子类型:讨论 / 问答 / 公告(仅管理端可发),三类帖必须归属分类
  • 问答闭环:作者与版主可标记「已解决」,列表徽标区分未解决 / 已解决
  • 两级分类:Iconify 图标 + 独立分类色 + slug + 封面,拖拽排序;板块级配置(置顶帖上首页、版主角色)仅一级分类可设
  • 审核流(可选):草稿 / 待审核 / 已发布 / 已驳回;可配置「编辑已发布是否重新审核」;驳回后重提永远重审;审核中可显式「取消提交」退回草稿;软删除进回收站
  • 版主体系:全站版主(bbs-moderate)+ 分区版主(一级分类指定角色,只管辖自己分类树)
  • 置顶与锁定:置顶在所属分类页浮顶、可选上首页(独立开关 + 权重);锁定帖禁评论、禁作者编辑 / 删除,历史评论只读
  • 编辑历史:基于 Halo 核心 Snapshot 版本链,历史版本查看、并排对照、恢复
  • 评论:接入 Halo 官方评论体系,详情页由「评论组件」插件渲染;评论管理复用 Halo 后台「评论」页
  • 全文搜索:接入 Halo 搜索,已发布帖子可被站点全局搜索搜到
  • RSS:经 plugin-feed 输出全站与一级分类订阅源
  • 前台:Flarum 风格两栏布局——分类树 + 紧凑列表,圆标(公告 / 置顶 / 未解决)+ 线框(已解决 / 锁定),桌面 / 窄屏自适应
  • 互动增强集成(可选):帖子页装扮(头像框 / 称号 / 勋章 / 悬浮名片)、作者名链接优先用用户卡跳转模板、发帖数贡献到名片统计
  • 站内通知:审核通过 / 驳回走 Halo 官方通知中心
  • 面向主题:Finder(${bbs})+ 匿名公开 REST API,可覆盖 bbs.html / bbs_post.html 模板
  • 安全:正文 HTML 服务端白名单净化,SVG 图标零 URL / 零事件属性

📋 环境要求

  • Halo >= 2.25.0
  • JDK 21(自行构建)

📦 安装方式

下载 plugin-bbs-1.0.0.jar,在 Halo 后台 → 插件 → 安装 → 上传并启用。

🔧 配置说明

  1. 创建分类(必须先行):「BBS 社区 → 帖子列表 → 分类」,帖子必须归属分类,一个分类都没建时用户发不了帖
  2. 分配角色:发帖权已聚合给所有登录用户,无需配置;版主 / 管理角色手动分配
  3. 安装评论组件:评论区必需(未装则评论区为空,其余正常);可选装互动增强(装扮)与 plugin-feed(RSS)
  4. 外观与审核:插件设置里配品牌(标题 / Logo / 主题色)、审核开关(默认提交即发布)
  5. 访问前台 /bbs 验证

⚠️ 注意事项

  • 先建分类再开放发帖——没有分类时用户侧无法发帖
  • 评论的登录 / 审核策略由「系统设置 → 评论」统一控制
  • 「后台查看」权限不要授给普通用户,否则对方能进管理后台看到草稿 / 待审核 / 回收站
  • 可选依赖(互动增强 / plugin-feed)缺席时自动降级,不影响插件启动与运行
  • 公告仅管理端可发;用户不能置顶、不能锁定

📚 文档

  • 主题开发指南:模板覆盖、Finder 方法、公开 REST API
  • README:使用说明、权限模型、插件设置

反馈:BBS 社区

资源下载

  • plugin-bbs-1.0.0.jar