- 折叠隐藏内容ID spoiler_blocks版本 1.0.0插件制作者 233免费51 行 / 2.6 KBHook使用简单标记创建可展开的隐藏内容和剧透区域。app/plugins/spoiler_blocks/plugin.php本插件的完善需要你的积极参与。安装使用中遇到任何,不要抱怨,请直接回帖描述,帮助开发者完善。开发日志已有 1 条
个人独立维护项目。
主楼点赞与点评1sansan2026-08-26
插件质量报告
插件:
spoiler_blocksHook 功能范围 循环 使用频率 文件读写 修改系统表 读写系统表 读写自己的表 markdown.after Markdown 渲染后 是 5 - - - - markdown.before Markdown 渲染前 是 5 - - - - 颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。只有操作实际处于可执行的循环路径时,才会标记“修正❗️”。
数据字典
未检测到插件数据表声明。
🔍 插件审查报告(对照《AI 开发规则》与开发者文档)
🔒 安全问题
未发现明显问题。剧透标题经
h()转义,正文走markdown_html()二次渲染,无 SQL、文件、eval 或外部请求。⚡ 性能问题
未发现明显问题。
markdown.before(红区)回调仅做纯文本正则,无数据库读取;markdown.after仅在存在剧透标记时递归渲染,代价有界。🐛 功能/规范缺陷
- 行内剧透产生非法 HTML 嵌套:plugin.php:32 用裸 token 替换,
<details>块元素被塞进<p>(bbs1 默认把整段拼成单个 <p>,plugin.php:15 只返回 token 文本)。建议让 token 独立成段,或替换后修正段落边界。 - 嵌套剧透不展开:plugin.php:6/21 用布尔标志
__spoiler_blocks_rendering抑制递归,内层[spoiler]会原样显示。建议改为深度计数或明确说明不支持嵌套。 - 仅识别行首行尾标签:plugin.php:8 正则用
^...$(/m),同行[spoiler]内容[/spoiler]不生效。建议放宽锚定或提供行内语法。
✅ 修复优先级
先修第 1 条(影响主功能正确性),再按需处理嵌套与行内识别。
- 行内剧透产生非法 HTML 嵌套:plugin.php:32 用裸 token 替换,
旧格式迁移:已将插件代码转存到开发日志,主题正文改为基础介绍。