ZibChat 为 WordPress 网站打造轻量级、实时聊天室,仿 Discord 风格,适配 Zibll 主题。支持频道管理、多媒体交互、权限设置等,满足粉丝交流、客服支持、内部协作等场景需求,带来便捷交流体验。
功能特点
1. 仿 Discord 风格界面
- 三栏式布局(频道侧边栏、主聊天区、成员侧边栏)
- 支持浅色/深色主题自适应,桌面端与移动端响应式设计
2. 频道管理
- 支持无限数量频道,可分组(如公告、综合讨论、闲聊)
- 频道类型:文本频道、公告频道(仅管理员可发言)
- 自定义频道图标、描述、排序、慢速模式
- 读取/写入/管理三级权限,按 WordPress 角色(管理员、编辑、作者、订阅者等)或 VIP 会员细分控制
3. 实时消息系统
- 基于优化的长轮询(自适应间隔:活跃时 1-3 秒,空闲时 5-10 秒,页面不可见时暂停)
- 消息支持编辑、删除、置顶、引用回复
- 消息撤回功能(默认 2 分钟内可撤回)
- 支持富文本:Markdown 子集(粗体、斜体、代码块、删除线)、自动链接、图片嵌入(
[img=url]) - 消息历史滚动加载(上拉加载更早消息)
4. 成员与状态管理
- 实时显示在线/忙碌/空闲/离线用户,按状态分组
- 用户可手动切换状态,系统通过心跳包自动检测离线
- 成员头像、VIP 徽章、角色标识展示
5. 用户交互增强
@提及用户与@all(管理员可用),点击提及可查看用户卡片- 表情系统:支持主题自带 GIF/PNG 表情和自定义表情分组,提供表情选择器
- 消息回应(Reactions):支持 👍 ❤️ 😂 等常用表情
- 线程回复(Thread):对一条消息发起子讨论串
- 右键/工具栏菜单:回复、编辑、删除、置顶、禁言等快捷操作
6. 多媒体支持
- 允许上传图片、视频、文档、语音消息
- 每种类型有独立的大小限制(图片 10MB、视频 50MB、文件 20MB、语音 5MB)
- 自动生成图片缩略图,支持本地存储或云存储(阿里云 OSS/腾讯云 COS 预留接口)
- 安全扫描:检测文件内容是否包含恶意代码
7. 搜索功能
- 在当前频道内搜索历史消息,支持分页显示结果,点击结果自动定位并高亮消息
8. 通知系统
- 新消息时播放提示音(Web Audio 实现)
- 当页面处于后台时,浏览器桌面通知 + 标题栏闪烁未读计数
9. 权限与安全
- 与 Zibll 主题的黑屋/封禁系统无缝集成
- 全局及频道级禁言(可设永久或时长)
- 速率限制:按操作类型(发消息、编辑、删除、搜索等)限制请求频率,防止滥用
- 审计日志:记录敏感操作(发送、编辑、删除、禁言、频道管理等),支持 CSV 导出与清理
10. 性能优化
- 对象缓存(
wp_cache)缓存用户数据、频道列表、未读计数、消息 HTML 等,支持 Redis/Memcached - 预加载用户数据,减少 N+1 查询
- 数据库索引优化,支持消息自动清理(按保留天数)
- 支持 GZIP 压缩 AJAX 响应
11. Zibll 主题深度集成
- 自动识别 Zibll 主题,复用其头像、VIP 等级、用户主页链接、登录注册弹窗
- 在 Zibll 导航栏中添加聊天室入口按钮
- 支持 Zibll 全局封禁状态检测
12. 管理后台
- 独立设置页面:全局开关、路由路径、消息长度、保留天数、声音、压缩等
- 频道管理:增删改查,支持权限配置(可视化复选框)
- 封禁管理:查看所有活跃禁言记录,支持手动解封
13. 开发者友好
- 提供 30+ 动作/过滤器钩子(
zibchat_*),便于二次开发 - 内置日志系统(按级别写入文件),支持异常捕获与慢查询记录
- 单元测试覆盖:缓存、媒体上传、消息操作、速率限制等关键模块
14. 部署与维护
- 插件激活时自动创建所需数据表及默认频道
- 计划任务(cron)自动清理离线用户与过期封禁
- 卸载时完整删除所有自定义表与选项
- 支持
wp-cli与 PHPUnit 自动化测试
适用场景:为 WordPress 网站(尤其是使用 Zibll 主题的社区站点)提供轻量级、实时、类似 Discord 的聊天室体验,适合粉丝交流、客服支持、内部协作等用途。




