Commit Graph

68 Commits

Author SHA1 Message Date
31e55648cb feat: 批量检测集成统一接口并添加AI查询统计页面
- 修改 argon_batch_detect_spam_comments() 使用统一的 argon_ai_query() 接口
- 删除旧的 argon_call_ai_api_for_batch_spam_detection() 函数
- 添加 argon_register_ai_query_stats_page() 注册统计页面
- 添加 argon_render_ai_query_stats_page() 渲染统计页面
- 统计页面显示总查询次数、成功率、平均响应时间、失败次数
- 按场景和服务商分别统计查询数据
- 显示最近30天的查询趋势
- 在 settings.php 的 AI 摘要设置中添加查看统计链接

统计页面功能:
- 总览卡片:总查询次数、成功率、平均响应时间、失败次数
- 按场景统计:文章摘要、垃圾评论检测、批量检测等
- 按服务商统计:OpenAI、Claude、DeepSeek 等
- 查询趋势:最近30天每日查询数据
2026-01-26 12:58:41 +08:00
079ba0a261 feat: 优化多 API 管理和添加连通性测试
- 移除 AI 文章摘要的 h3 标题
- 多 API 管理显示所有提供商的 API 配置(不再只显示选中的)
- 为每个 API 配置添加测试按钮
- 实现 API 连通性测试功能(argon_test_api_connection)
- 测试功能显示响应时间和连接状态
- 优化界面布局,提升用户体验
2026-01-26 11:58:20 +08:00
a025a6bdd8 feat: 完善多 API 管理功能
- 为每个 API 配置添加刷新模型列表按钮
- 支持从 API 端点动态获取可用模型列表
- 添加模型选择界面,支持单选和快速应用
- 优化配置获取函数的错误处理和向后兼容性
- 修复空配置导致的 Fatal Error 问题
- 每个提供商可独立配置多个 API(不同密钥、端点、模型)
- 支持负载均衡、备用切换等使用场景
2026-01-26 11:44:52 +08:00
f33b0e4344 fix: 修复多 API 管理功能的删除和保存逻辑
- 删除 API 前检查是否为当前激活的配置,防止误删
- 保存 API 配置时正确保留激活状态
- 添加新 API 时,如果是第一个自动设置为激活
- 优化用户体验,提供明确的错误提示
2026-01-26 11:21:50 +08:00
7dcc89151a feat: 实现单服务商多 API 配置功能
- 在 functions.php 中添加多 API 管理函数:
  * argon_get_provider_apis() - 获取提供商的所有 API 配置
  * argon_add_provider_api() - 添加 API 配置
  * argon_update_provider_api() - 更新 API 配置
  * argon_delete_provider_api() - 删除 API 配置
  * argon_set_active_api() - 设置当前使用的 API
- 修改 argon_get_ai_provider_config() 函数支持多 API
- 添加 AJAX 接口用于管理 API 配置
- 在 settings.php 中重构 AI 配置界面:
  * 显示已配置的 API 列表
  * 支持添加/编辑/删除 API 配置
  * 单选框选择当前使用的 API
  * 添加 JavaScript 交互逻辑
- 修改设置保存逻辑,保存多 API 配置数组
- 向后兼容:自动迁移旧的单 API 配置
- 每个提供商可配置多个 API,方便负载均衡和备用切换
2026-01-26 11:14:35 +08:00
2e2ddc59da feat: 实现多 API 管理系统
- 为每个 AI 提供商添加独立的配置(API 密钥、端点、模型)
- 新增 argon_get_ai_provider_config() 辅助函数获取提供商配置
- 更新设置页,为 10 个提供商分别显示配置表单
- 添加密码显示/隐藏切换按钮
- 每个提供商独立的模型刷新按钮
- 切换服务商时自动显示对应配置
- 更新所有 API 调用函数使用新配置结构
- 更新设置保存逻辑,保存所有提供商配置
- 支持同时配置多个 AI 服务,灵活切换使用
2026-01-26 11:10:07 +08:00
e9bae85802 feat: 添加小米 Mimo AI 模型支持
- 在设置页 AI 服务商列表中添加小米 Mimo 选项
- 实现 argon_call_xiaomi_api() 函数,使用 OpenAI 兼容格式
- 实现 argon_get_xiaomi_models() 模型列表获取函数
- 在 AI 摘要生成中添加 xiaomi 分支支持
- 在垃圾评论检测中添加小米 Mimo 端点配置
- 在关键词提取中添加小米 Mimo 端点配置
- 在批量垃圾评论检测中添加小米 Mimo 端点配置
- 默认模型:MiMo-V2-Flash
- API 端点:https://api.mimo.xiaomi.com/v1/chat/completions
2026-01-26 11:01:51 +08:00
28f0a1265e feat: 更新 Mermaid 到 v11 并优化错误处理
- 更新 Mermaid 库版本从 v10 升级到 v11.12.2
- 优化错误处理逻辑,避免重复嵌套错误容器
- 修复查看源代码时可能出现的嵌套报错问题
- 改进渲染前检查,跳过已处理的错误容器和已渲染的图表
- 优化重新渲染逻辑,只处理成功渲染的图表,排除错误容器
- 增强代码提取逻辑,优先使用传入的代码参数
- 添加主题切换时的智能判断,避免不必要的重新渲染
- 更新 functions.php 中的 CDN 地址到 v11
- 更新 settings.php 中的预览功能 CDN 地址到 v11
- 改进错误容器的 DOM 结构,使用独立元素而非 innerHTML
2026-01-24 22:46:00 +08:00
679015dece feat: AI 垃圾评论检测系统优化
- 实现多级 Prompt 系统(极简/标准/增强/自定义模式)
- 添加智能置信度评分系统(0-1 范围)
- 实现智能处理建议(auto/review/approve)
- 添加上下文增强功能(文章信息、用户历史、隐私脱敏)
- 实现学习机制(记录管理员审核决策,分析误判率)
- 添加 API 错误处理和自动禁用机制
- 优化设置界面(推荐配置、统计信息、错误日志)
- 创建反馈数据库表用于学习优化
- 实现批量扫描功能(使用新的检测引擎)
- 添加隐私保护级别配置(标准/严格模式)

核心类:
- Argon_Spam_Prompt_Engine: Prompt 管理和生成
- Argon_Spam_Context_Builder: 上下文信息构建
- Argon_Spam_Threshold_Manager: 阈值管理
- Argon_Spam_AI_Detector: 主控制器
- Argon_Spam_Learning_Module: 学习和统计
- Argon_Spam_API_Error_Handler: 错误处理
2026-01-24 22:37:41 +08:00
29bfd284e0 feat: 实现 Mermaid 代码块魔改支持
- 添加 convertMermaidCodeblocks() 函数,在代码高亮前拦截 mermaid 代码块
- 支持标准 Markdown 代码块 (\\\mermaid) 渲染
- 更新 detectMermaidBlocks() 添加 mermaid-from-codeblock 选择器
- 更新 extractMermaidCode() 支持新容器类型
- 创建测试文件 test-codeblock-magic.html
- 更新用户文档、开发者文档和 FAQ
- 完全绕过代码高亮和 WordPress 格式化
- 支持 PJAX 页面切换
- 特殊字符和换行符正确保留
2026-01-24 21:35:12 +08:00
f36a96d3b6 feat: 实现 Mermaid 插件兼容层
- 添加插件检测函数(WP Githuber MD、Markdown Block、Code Syntax Block)
- 实现 Mermaid 库加载状态检测
- 添加重复加载防护逻辑,避免与插件冲突
- 在设置页显示插件兼容性状态
- 修改库加载逻辑,当检测到插件时跳过加载
- 在 JavaScript 端添加库加载状态标记
- Requirements: 9.1, 9.2, 9.3, 9.4, 9.5
2026-01-23 23:36:12 +08:00
8ed0ec1717 feat: 在设置页添加 Mermaid 配置选项
- 新增第 15 个一级分类:Mermaid 图表
- 包含 3 个子分类:基本设置、外观设置、高级选项
- 添加 6 个配置项:
  * 启用 Mermaid 支持开关
  * CDN 来源选择(jsDelivr/unpkg/自定义/本地)
  * 自定义 CDN 地址输入框
  * 图表主题选择(auto/default/dark/forest/neutral)
  * 使用本地镜像开关
  * 调试模式开关
- 在 argon_update_themeoptions() 函数中添加选项保存逻辑
- 更新后续分类编号(高级设置 1516,评论设置 1617,验证码设置 1718,反馈与安全 1819)
- Requirements: 5.1, 5.2, 5.3, 5.4
2026-01-23 22:49:00 +08:00
54cbb400b9 feat: 移除 Mermaid 支持并创建需求文档
- 从 settings.php 移除 Mermaid 设置项和选项保存逻辑
- 从 functions.php 移除 Mermaid 代码块预处理函数
- 从 footer.php 移除 Mermaid 加载和渲染代码
- 从 style.css 移除 Mermaid 图表样式
- 删除本地镜像文件 assets/vendor/external/mermaid/
- 创建 mermaid-support-requirements.md 需求文档

原因:WP-Markdown 编辑器保存的 Markdown 源文件中 Mermaid 代码是一整行,
没有真正的换行符,导致 Mermaid 解析器持续报错。所有尝试的解决方案均失败。
需求文档中详细说明了问题原因和推荐的替代方案。
2026-01-23 22:11:09 +08:00
7feca8f17d feat: 为 Mermaid 添加本地镜像支持
- 在设置页添加'使用本地镜像'复选框选项
- 修改 footer.php 添加本地镜像判断逻辑
- 下载 Mermaid 10.x 本地镜像文件到 assets/vendor/external/mermaid/
- 本地镜像文件大小约 3.3MB
- 勾选后优先使用主题内置版本,提升加载速度
- 添加 argon_mermaid_use_local 选项保存逻辑
2026-01-23 18:55:08 +08:00
627a57c5e9 feat: 添加 Mermaid 图表支持
- 在设置页功能增强分类中添加 Mermaid 图表设置项
- 支持启用/禁用 Mermaid 渲染
- 支持自定义 CDN 地址(默认 jsdelivr)
- 提供 4 种主题选择(默认/森林/暗色/中性)
- 在 footer.php 中添加 Mermaid 库加载和初始化逻辑
- 自动识别 language-mermaid 和 mermaid 类的代码块
- 在 style.css 中添加 Mermaid 图表样式
- 支持响应式布局和夜间模式
- 使用方式:在代码块中指定语言为 mermaid
2026-01-23 18:50:50 +08:00
468f2a0a93 fix: 删除 AI 审查设置中重复的抽查概率设置项
- 删除独立的'抽查基础概率'设置项(已在'检测策略'中包含)
- 优化设置页结构,避免重复配置
- 保持功能不变,只是移除了重复的UI元素
2026-01-23 18:35:40 +08:00
a38f168909 refactor: 移除智能预审查,改为先保存后检测
- 移除所有智能预审查相关的设置和代码
- 评论先保存到数据库并标记为待审核状态
- AI 检测在评论保存后异步进行
- 检测完成后根据结果更新评论状态
- 避免误杀正常评论,提升用户体验
- 所有需要检测的评论都会显示为审核中
2026-01-23 18:32:54 +08:00
244b1725af feat: 优化 AI 审查设置页结构
- 将设置项合并为 4 个逻辑分组:检测策略、关键字管理、AI 配置、处理规则
- 检测策略:整合实时检测模式、抽查概率、智能预审查
- 关键字管理:整合 AI 学习开关和手动添加关键字
- AI 配置:整合 Prompt 模式、置信度阈值
- 处理规则:整合自动处理方式、检测范围、白名单
- 优化界面布局,使用统一的样式和间距
- 添加清晰的标签和分组,提升可读性
2026-01-23 18:19:45 +08:00
fa54d0a673 fix: 优化 Prompt 模式设置,避免与检测提示词冲突
- 将自定义检测提示词移到 Prompt 模式选项内部
- 只有选择「自定义 Prompt」时才显示文本输入框
- 添加平滑的显示/隐藏动画效果
- 优化界面布局,提升用户体验
2026-01-23 18:06:20 +08:00
777e98e17e fix: 修正关键字必查模式的检测逻辑
- 关键字必查模式:只检测触发关键字的评论
- 智能抽查模式:关键字触发或随机抽查
- 全量检测模式:检测所有评论,关键字触发时优先标记
- 优化检测逻辑,使各模式职责更清晰
2026-01-23 18:01:10 +08:00
97836994e5 feat: 添加 AI 垃圾评论检测的设置页选项
- 关键字必查:触发关键字后立即 AI 审核
- AI 主动学习:自动分析管理员决策并优化关键字
- 学习到的关键字:显示 AI 学习的关键词统计
- 智能预审查:在评论保存前进行 AI 审查
- 添加同步检测函数支持预审查功能
2026-01-23 17:54:16 +08:00
5c636a241f feat: 添加 AI 垃圾评论检测的智能化配置选项
- 添加 Prompt 模式选择(极简/标准/增强/自定义)
- 添加自动处理置信度阈值设置
- 极简模式:省 token,快速检测(100-150 tokens)
- 标准模式:平衡准确性和成本(200-300 tokens)
- 增强模式:多维度分析,更准确(300-500 tokens)
- 支持根据置信度智能判断是否自动处理
- 提供不同规模博客的配置建议
2026-01-23 16:20:26 +08:00
776cecd9e7 fix: 删除邮件模板设置中的重复行 2026-01-23 15:59:26 +08:00
e76d346c4b feat: 优化邮件模板设置界面
- 修改输入框默认值为空,避免显示灰色占位文本
- 优化占位符提示,显示占位符说明
- 添加默认模板预览区域
- 优化占位符样式,使用不同颜色区分
- 添加更清晰的说明文字
2026-01-23 15:58:43 +08:00
4712cb469c refactor: 清理孤立代码
- 删除未使用的邮件模板类型(user_register, password_reset, general)
- 删除 style.css 中未使用的 .shortcode-todo 样式(约30行)
- 保留 todo_urge 邮件类型(有实际使用)
- 减少约 120 行冗余代码
2026-01-23 15:49:46 +08:00
3ce699268b fix: 修复动画效果、CDN和日期格式选项无法保存的问题
- 在外观样式分类中添加动画效果子分类和表单字段
  * 平滑滚动 (argon_enable_smoothscroll_type)
  * 进入文章动画 (argon_enable_into_article_animation)
  * Pjax滚动动画 (argon_disable_pjax_animation)
- 在SEO与性能分类中添加CDN加速子分类和表单字段
  * CDN选择 (argon_assets_path)
  * 自定义CDN路径 (argon_custom_assets_path)
  * WordPress安装目录 (argon_wp_path)
- 在SEO与性能分类中添加日期格式子分类和表单字段
  * 日期格式选择 (argon_dateformat)
- 所有选项在保存函数中已存在,修复完成
2026-01-22 15:32:02 +08:00
be5a6538d0 fix: 修复特殊页面归档和友情链接设置混乱的问题
- 将'在时间轴上显示月份'设置项从友情链接移到归档页面
- 删除特殊页面中空的友情链接子分类标题
- 修正归档页面设置项的归属
2026-01-22 15:24:09 +08:00
a536fc0b37 fix: 修复邮件模板无法保存的问题
- 在保存邮件模板的代码中添加缺失的 spam_notify 类型
- 修复垃圾评论通知邮件模板无法保存的 bug
- 邮件类型数组从 6 个补全为 7 个
2026-01-22 15:20:19 +08:00
e7509e524f fix: 优化设置页结构细节
- 移除 AI 垃圾评论识别中的'检测结果'三级标题
- 移除页脚设置中重复的两个二级标题
- 将页脚设置内容直接放在一级标题下
- 文件从 6480 行减少到 6475 行
2026-01-22 15:16:57 +08:00
66dd8bfb11 feat: 完成设置页18个分类的完整重组
- 拆分'浮动按钮与页脚'为'8. 浮动按钮'和'9. 页脚设置'
- 将页脚设置从特殊页面移到独立的'9. 页脚设置'分类
- 删除特殊页面中重复的页脚设置(32行)
- 添加'14. 功能增强'分类标题
- 将'15. 高级设置'中的日期格式和杂项删除(已在其他分类中)
- 删除高级设置中重复的动画设置(68行)
- 所有18个分类编号现在完全正确(1-18)
- 文件从6673行减少到6480行
2026-01-22 15:04:38 +08:00
f9dc71d5c6 fix: 修复设置页分类结构问题
- 删除第611-717行重复的顶栏设置(107行)
- 将第1467行的'9. 高级设置'改为'10. SEO与性能'
- 将'10-13'分类编号改为'11-14'
- 将'14. 评论设置'改为'16. 评论设置'
- 将'15. 验证码与安全'改为'17. 验证码设置'
- 添加'18. 反馈与安全'分类标题
- 删除重复的'18. 反馈与安全'标题
- 文件从6673行减少到6566行
2026-01-22 14:59:33 +08:00
e57dcd9c86 fix: 修正分类编号
- 高级设置编号从19改为15
- 验证码设置保持17
- 反馈与安全保持18
- 所有分类编号现在正确(1-18)
2026-01-22 14:47:25 +08:00
b471bbc7b8 feat: 完成设置页完整重组
- 将评论功能、AI垃圾评论识别、评论区外观从验证码与安全移到评论设置
- 将'验证码与安全'拆分为'验证码设置'(第17分类)和'反馈与安全'(第18分类)
- 验证码设置包含:验证码配置、场景验证码
- 反馈与安全包含:反馈设置、速率限制
- 高级设置调整为第19个分类
- 评论设置现在包含:评论分页、发送评论、评论功能、AI垃圾评论识别、评论区外观
2026-01-22 14:45:59 +08:00
0fb1d11cad feat: 拆分浮动按钮与页脚为独立分类
- 将'浮动按钮与页脚'拆分为'浮动按钮'和'页脚设置'两个独立分类
- 浮动按钮成为第8个分类
- 页脚设置成为第9个分类,包含页脚内容设置
- SEO与性能调整为第10个分类
- 更新后续所有分类编号(11-16)
2026-01-22 14:44:26 +08:00
3104cad990 fix: 删除重复的子目录和页脚设置
- 删除第310-324行重复的子目录设置
- 删除特殊页面中错误的页脚设置(第2539-2553行)
- 减少30行重复内容
2026-01-22 14:43:12 +08:00
c68d47b403 fix: 删除SEO与性能分类中重复的CDN和日期格式设置
- 删除第1694-1781行重复的CDN加速子分类
- 删除重复的日期格式子分类
- 减少88行重复内容
- 保留第1606行的正确CDN设置
2026-01-22 14:37:08 +08:00
ee2976dee0 fix: 修正验证码与安全分类的编号
- 将验证码与安全的编号从15改为16
- 现在所有一级分类编号正确(1-16)
- 完成分类编号的规范化
2026-01-22 14:31:40 +08:00
28640828fd feat: 完成设置页结构重组
- 在基础设置中添加子目录设置
- 将第9个分类从高级设置改为SEO与性能
- 在SEO与性能中添加SEO、CDN加速、日期格式三个子分类
- CDN和日期格式设置已从错误位置移到正确分类
- 完成了设置页的核心结构优化
2026-01-22 14:28:04 +08:00
1c615ddf08 feat: 删除重复的顶栏设置标题及错误放置的设置项
- 删除第685-792行之间错误的顶栏设置标题
- 删除错误放置的CDN、子目录、日期格式设置
- 这些设置将在后续步骤中移到正确的分类
- 减少107行重复内容
2026-01-22 14:25:34 +08:00
c9e2c7dfe2 feat: 将动画效果从功能增强移到外观样式
- 在外观样式中新增动画效果子分类
- 包含平滑滚动、进入文章动画、Pjax动画三个设置项
- 删除杂项中重复的动画效果设置
- 动画效果现在归属于外观样式,更符合逻辑
2026-01-22 14:23:43 +08:00
e667a22b1a feat: 删除高级设置中重复的日期格式设置
- 删除第3018行附近重复的日期格式子分类
- 日期格式设置已在SEO与性能分类中
- 高级设置现在只包含自定义脚本和杂项
2026-01-22 14:21:26 +08:00
a9860af58b feat: 优化设置页子分类命名
- 场景验证码:'各场景验证码'  '场景验证码'
- 顶栏标题:'标题'  '顶栏标题'
- 标题样式:'文章内标题样式'  '标题样式'
- 文章目录:'左侧栏文章目录'  '文章目录'
- 文末内容:'文末附加内容'  '文末内容'
- 文章头图:'文章头图 (特色图片)'  '文章头图'
- 过时提示:'其他'  '过时提示'

优化后的命名更加简洁明确,提升用户体验
2026-01-22 14:12:42 +08:00
3a35408e7c fix: 强制显示设置页所有子目录
- 添加 CSS 规则 display: block !important
- 覆盖 headindex.css 的默认隐藏样式
2026-01-22 14:01:09 +08:00
a7b4fbc381 fix: 设置页目录默认全部展开
- 为 headindex.js 添加 defaultExpanded 配置项
- 设置页启用 defaultExpanded 模式
- 初始化时展开所有子目录
- 切换当前项时不自动折叠其他项
2026-01-22 13:57:38 +08:00
dc7a9dbdf5 fix: 确保设置页目录框默认展开
- 在页面加载时移除 folded 类
- 防止目录框自动折叠
2026-01-22 13:55:33 +08:00
0a01351db2 fix: 恢复设置页目录框收起/展开按钮
- 保留目录框折叠功能
- 默认状态为展开(不添加 folded 类)
- 用户可手动收起或展开
2026-01-22 13:53:14 +08:00
27bc4e4398 fix: 设置页目录框始终展开
- 移除目录框折叠按钮
- 删除 folded 类相关样式
- 调整内边距适配新布局
2026-01-22 13:51:36 +08:00
e01490a0f8 feat: 邮件社交链接支持 Bilibili 和自动补全
- 在邮件设置中添加 Bilibili 社交链接输入框
- 实现社交链接自动补全功能(支持只填写用户名/UID)
- 添加 argon_normalize_social_url() 函数处理链接标准化
- 更新邮件模板基础文件支持 Bilibili 显示
- 支持的平台:Twitter、GitHub、微博、Bilibili、Facebook、Instagram
2026-01-22 13:41:28 +08:00
5150b67339 feat: 完善 AI 垃圾评论识别设置项
- 抽查基础概率可配置(默认 20%,可调整 1-100%)
- 新增自动处理方式选项(移入回收站/标记待审核/仅标记)
- 新增白名单功能(支持邮箱和 IP 地址)
- 新增提示词预设模板选择(默认/严格/宽松/极简)
- 实现白名单检查逻辑,白名单中的评论不会被检测
- 根据自动处理方式设置处理垃圾评论(trash/hold/mark)
- 保存所有新增设置项到数据库
2026-01-22 13:01:18 +08:00
2f7040ef0f feat: 实现智能动态抽查机制
- 新增基于用户历史通过率的动态抽查概率调整
- 通过率高的用户降低抽查概率(最低 5%)
- 通过率低的用户提高抽查概率(最高 80%)
- 用户统计数据保存 30 天,自动过期
- 支持三种检测模式:手动、智能抽查、全量实时
- 优化设置页面说明,详细展示抽查概率调整规则
2026-01-22 12:53:18 +08:00