- charcoal-fire2026-08-25核弹爆炸级 Word 文档主题风摸鱼神器ID office_document_mode版本 1.0.2插件制作者 charcoal-fire免费1429 行 / 191.6 KBHook / 路由一键把论坛变成以假乱真的 Word 文档工作区。连续阅读、楼层大纲、原生回复、明暗切换、未读管理、账号同步全部拉满。表面上在认真写方案,实际上正在高强度逛论坛,老板贴脸检查都很难发现。app/plugins/office_document_mode/plugin.php开发日志已有 3 条
个人独立维护项目。
- 2026-08-26 14:53版本 1.0.2 60919a9d7b06 更新:版本 1.0.2 更新:手机版终于可以直接退出办公文档模式。 - 手机版固定底栏由五等分升级为六等分,在“通知”后新增“退出”按钮 - 退出按钮复用桌面端同一套未保存内容确认、POST + CSRF 状态保存和账号同步逻辑 - 点击退出后立即恢复原生论坛界面,刷新后继续保持退出,不会再次自动进入文档模式 - 375x812 与 320x700 均验证六项等宽,图标和文字完整,无横向溢出或正文遮挡 release
- 2026-08-26 14:08版本 1.0.1 3064e56d0412 更新:版本 1.0.1 更新:修复 Chrome 启用后无法进入论坛、动态插件页面假死和退出困难问题。 - 初始化改为 fail-open:文档外壳成功建立后才切换界面,中途异常自动恢复原生顶部、正文和交互,不再留下空白页 - 插件市场、打赏、长内容折叠和引用线程保留原始 DOM 结构,避免观察器循环;bbs1org v8.7.5 实测 mutation 为 0 - 开启/退出确认页恢复独立紧凑样式,并
- 2026-08-25 15:08版本 1.0.0 7d1b0aa2acb1 更新:1.0.0 首发:核弹爆炸级 Word 文档主题风摸鱼神器正式上线。 老板突然贴脸?同事从背后路过?别慌。开启插件后,整个论坛瞬间切换成一套以假乱真的办公文档工作区:左边是文档导航,中间是连续正文,上面是标准功能区,长帖、回复、搜索和未读内容全部被塞进一张“认真工作”的脸里。 摸鱼只是表象,实力才是底牌: - 帖子和全部回复合并成连续文档,长讨论从头读到尾不再被卡片割裂 - 左侧自动生成真实楼层大
主楼点赞与点评2charcoal-fire2026-08-25
bbs1org2026-08-26
插件质量报告
插件:
office_document_modeHook 功能范围 循环 使用频率 文件读写 修改系统表 读写系统表 读写自己的表 page.head 全站页面 head 否 5 - - - 读 plugin_office_document_mode_users page.header 全站页面页头 否 5 - - app_topics 读 plugin_office_document_mode_users, plugin_office_document_mode_reads top.menu_links 顶部版块导航/移动端版块列表,同一请求只执行一次(展示位置:顶部菜单) 否 5 - - - 读 plugin_office_document_mode_users topic.index_data.loaded 首页/版块/用户主题列表查询后 否 5 - - app_topics 读 plugin_office_document_mode_users, plugin_office_document_mode_reads topic.title_suffix 首页/版块主题列表逐条标题 是 5 - - - - topic.after_view 主题查看页完成加载 否 4 - - - 写 plugin_office_document_mode_reads;读 plugin_office_document_mode_users topic.list_columns 主题列表列定义 否 4 - - - 读 plugin_office_document_mode_users reply.after_save 回帖保存后 否 3 - - app_topics 写 plugin_office_document_mode_reads;读 plugin_office_document_mode_users topic.after_save 主题保存后 否 3 - - app_topics 写 plugin_office_document_mode_reads;读 plugin_office_document_mode_users 颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。
数据字典
未检测到插件数据表声明。
- charcoal-fire2026-08-25
版本 1.0.0 更新:
1.0.0 首发:核弹爆炸级 Word 文档主题风摸鱼神器正式上线。老板突然贴脸?同事从背后路过?别慌。开启插件后,整个论坛瞬间切换成一套以假乱真的办公文档工作区:左边是文档导航,中间是连续正文,上面是标准功能区,长帖、回复、搜索和未读内容全部被塞进一张“认真工作”的脸里。
摸鱼只是表象,实力才是底牌:
- 帖子和全部回复合并成连续文档,长讨论从头读到尾不再被卡片割裂
- 左侧自动生成真实楼层大纲,一键空降主题正文、任意回复和编辑器
- 原生搜索、发帖、回复、引用、点赞、Markdown、分页、权限与 CSRF 全部保留
- 浅色、深色、未读状态和功能区折叠随登录账号同步
- 功能区收起后,进入帖子、刷新、返回列表都不会偷偷弹回来
- 动态读取真实论坛版块,不硬编码测试分类,不修改论坛核心文件
- 桌面端是完整办公文档工作区,移动端保留首页、导航、搜索、发帖和通知五大核心入口
- 支持打印、紧急恢复,并与 appearance_theme 独立共存,退出后立即恢复原论坛主题
一句话总结:表面上你在写方案、看文档、做需求评审,实际上社区动态、技术长帖和楼层讨论一个都没落下。它不是给论坛刷一层皮,而是把论坛阅读体验直接重组为一套能长期使用的在线文档系统。
首发质量不是嘴硬,是硬测:
- PHP 单元测试 144 项
- 资产提取测试 8 项
- SQLite 生命周期测试 51 项
- MySQL 8.4 测试 45 项
- PostgreSQL 17 测试 45 项
- Playwright DOM 测试 532 项
- bbs1org v8.6.5 真实浏览器测试 456 项
- 桌面、移动端、深色、未读、编辑器和打印共 9 张最终截图复核
- 浏览器控制台错误 0
适合技术社区、长教程、开发记录、项目讨论、需求评审,以及每一位希望在工位上低调掌控论坛动态的专业选手。
- charcoal-fire2026-08-25
为创意点赞
跟插件有点不兼容。估计是动结构了,不是纯css实现的。不过,挺厉害的创意。
这个进入的ui改进下,好像丢了样式。- charcoal-fire2026-08-25
- charcoal-fire2026-08-26
- charcoal-fire2026-08-26
版本 1.0.1 更新:
版本 1.0.1 更新:修复 Chrome 启用后无法进入论坛、动态插件页面假死和退出困难问题。- 初始化改为 fail-open:文档外壳成功建立后才切换界面,中途异常自动恢复原生顶部、正文和交互,不再留下空白页
- 插件市场、打赏、长内容折叠和引用线程保留原始 DOM 结构,避免观察器循环;bbs1org v8.7.5 实测 mutation 为 0
- 开启/退出确认页恢复独立紧凑样式,并明确提示可用 ?office_document_mode=off 紧急恢复
- 普通请求不再重复检查数据库结构,主题列表不再逐条读取用户状态
- 新增官方表单 CRLF 体积门禁,无损压缩源码排版,功能、界面、CSS 和 JavaScript 均保持不变
验证结果:PHP 153 项、资产 8 项、DOM 548 项、SQLite 51 项、MySQL 47 项、PostgreSQL 47 项、v8.6.5 真实浏览器 456 项全部通过;v8.7.5 动态兼容与强制初始化失败恢复通过。
- charcoal-fire2026-08-26
版本 1.0.2 更新:
版本 1.0.2 更新:手机版终于可以直接退出办公文档模式。- 手机版固定底栏由五等分升级为六等分,在“通知”后新增“退出”按钮
- 退出按钮复用桌面端同一套未保存内容确认、POST + CSRF 状态保存和账号同步逻辑
- 点击退出后立即恢复原生论坛界面,刷新后继续保持退出,不会再次自动进入文档模式
- 375x812 与 320x700 均验证六项等宽,图标和文字完整,无横向溢出或正文遮挡
验证结果:PHP 155 项、资产 8 项、DOM 553 项、SQLite 51 项、MySQL 47 项、PostgreSQL 47 项、bbs1org v8.6.5 真实浏览器 461 项全部通过;当前官方 v8.7.5 动态兼容 mutation 为 0,强制初始化失败恢复正常。
🔍 插件审查报告(AI 自动审查,对照《AI 开发规则》与开发者文档;本插件未被 8/18 楼上 350 的报告覆盖,属独立首次审查)
插件:office_document_mode v1.0.2
🔒 安全问题
- 开放重定向防护到位:office_document_mode_safe_return_url() 对 return_url 做了协议前缀、反斜杠、控制字符、双斜杠开头等校验,仅允许站内相对路径,未见绕过点。
- $_SERVER['REQUEST_URI'] 用于生成"返回地址"(plugin.php office_document_mode_current_return_url()),使用前已经过 office_document_mode_safe_return_url() 校验再输出,且输出到 HTML 属性时经过 h() 转义,未见反射型 XSS。
- 状态保存路由(office_document_mode_state_route)need_login()+require_post(),字段值经 office_document_mode_bool()/枚举白名单校验后才写入,未见注入风险。
⚡ 性能问题
未发现明显问题。未读状态查询(office_document_mode_unread_statuses)在 topic.index_data.loaded 阶段按当前页全部主题 ID 一次性批量查询(IN (...) + JOIN),随后 topic.title_suffix(红区 Hook)内只读 $GLOBALS 内存映射,未见循环查库。🐛 功能/规范缺陷
- 大量 !important:CSS 中有约 229 处 !important(含 20+ 处硬编码十六进制色值如 #202124、#185abd 等),用于强制覆盖核心默认样式以实现"伪装成 Word 文档"的视觉效果。规则要求"禁止无理由使用 !important"且"颜色优先使用系统变量";本插件因需要完全接管页面视觉(隐藏 .top/.wrap/.sidebar 等核心区块)用量较大,属功能定位决定的设计选择,但仍建议评估是否可以缩小覆盖范围、减少与核心/其他插件的样式冲突风险。
- 描述面向普通用户,未使用技术名词,符合规范;version 常量单独定义(OFFICE_DOCUMENT_MODE_VERSION),manifest 复用该常量,写法可行。
- 命名前缀检查:函数、CSS 类、data-* 属性、Hook 均以 office_document_mode_ / office-document-mode- 为前缀,未见冲突。
- manifest 注册的 8 个 Hook(top.menu_links、page.head、page.header、topic.list_columns、topic.index_data.loaded、topic.title_suffix、topic.after_view、topic.after_save、reply.after_save)逐一核对均为核心真实存在的 Hook,用法正确。
✅ 修复优先级
无安全或性能类问题;唯一规范项(!important 与写死颜色用量较大)为低优先级,属该插件"完全接管页面视觉"这一功能定位下的设计取舍,建议后续版本评估收窄影响范围即可,不影响当前使用安全性。
