# AI 设置重构 - 下一步工作 ## 已完成的工作 ✅ ### 1. functions.php 更新 - ✅ 添加数据迁移函数 `argon_migrate_ai_apis()` - ✅ 添加统一 API 管理函数 - `argon_get_all_apis()` - 获取所有 API - `argon_get_api_by_id($api_id)` - 获取指定 API - `argon_add_api($config)` - 添加 API - `argon_update_api($api_id, $config)` - 更新 API - `argon_delete_api($api_id)` - 删除 API - `argon_set_active_api_for_scenario($scenario, $api_id)` - 设置场景使用的 API - `argon_get_active_api_config($scenario)` - 获取场景的活动 API 配置 - ✅ 更新 `argon_get_ai_provider_config()` 支持新数据结构 - ✅ 添加新的 AJAX 处理函数 - `argon_ajax_add_unified_api()` - `argon_ajax_update_unified_api()` - `argon_ajax_delete_unified_api()` - `argon_ajax_set_active_unified_api()` - `argon_ajax_get_all_unified_apis()` - ✅ 在主题加载时自动迁移旧数据 ### 2. 草稿文件 - ✅ 创建新的 AI 设置界面草稿 (`tmp/ai-settings-new-structure.php`) - ✅ 设计了新的界面结构和交互逻辑 ## 待完成的工作 📋 ### 3. settings.php 重构 #### 3.1 移除旧的 AI 设置部分 需要移除的内容: - 第 1985-2400 行:旧的文章功能 - AI 摘要部分(包含按提供商分组的 API 配置) - 第 4662-5100 行:评论设置中的 AI 垃圾评论识别部分 #### 3.2 添加新的 AI 功能部分 在合适的位置(建议在第 1985 行之前)插入新的 AI 功能部分: ```php

``` #### 3.3 添加 JavaScript 交互代码 需要添加完整的 JavaScript 代码来处理: - 添加/编辑/删除 API - 测试 API 连通性 - 刷新模型列表 - 切换活动 API - 表单验证 #### 3.4 更新选项保存逻辑 在 settings.php 末尾的保存函数中: - 移除旧的 API 配置保存逻辑 - 添加新的统一 API 配置保存逻辑 - 保存场景化的活动 API 设置 ### 4. 测试 #### 4.1 数据迁移测试 - 测试从旧的多 API 系统迁移到新系统 - 验证所有 API 配置都正确迁移 - 验证活动 API 设置正确 #### 4.2 功能测试 - 测试添加新 API - 测试编辑 API - 测试删除 API - 测试切换活动 API - 测试 API 连通性测试功能 - 测试模型列表刷新功能 #### 4.3 场景测试 - 测试文章摘要生成(使用新的 API 系统) - 测试垃圾评论检测(使用新的 API 系统) - 测试不同场景使用不同 API #### 4.4 向后兼容测试 - 测试没有新数据时的回退逻辑 - 测试旧数据的自动迁移 ### 5. 文档更新 - 更新用户文档,说明新的 API 管理方式 - 更新开发文档,说明新的数据结构 ## 实施建议 由于 settings.php 的重构涉及大量代码修改(需要移除约 500 行旧代码,添加约 800 行新代码),建议: 1. **分步实施**: - 第一步:只添加新的 AI 功能部分,保留旧的设置(共存) - 第二步:测试新功能是否正常工作 - 第三步:移除旧的设置部分 - 第四步:全面测试 2. **备份策略**: - 在每一步之前都创建备份 - 使用 Git 分支进行开发 - 保留回滚方案 3. **用户通知**: - 在更新日志中说明重大变更 - 提供迁移指南 - 说明新功能的优势 ## 风险评估 ### 高风险项 - ❗ settings.php 重构可能影响现有用户的配置 - ❗ 数据迁移可能失败,导致 API 配置丢失 - ❗ JavaScript 代码可能与现有代码冲突 ### 缓解措施 - ✅ 已实现自动数据迁移和向后兼容 - ✅ 保留旧数据作为备份 - ✅ 使用独立的 AJAX 端点,避免冲突 - 📋 需要充分测试后再发布 ## 时间估算 - settings.php 重构:2-3 小时 - JavaScript 代码编写:1-2 小时 - 测试和调试:2-3 小时 - 文档更新:1 小时 **总计:6-9 小时** ## 下一步行动 1. 用户确认是否继续进行 settings.php 的重构 2. 如果继续,建议创建一个新的 Git 分支 3. 按照上述步骤逐步实施 4. 每完成一个步骤就进行测试和提交 ## 备注 - 当前已完成的 functions.php 修改已经提交(commit 5254ee0) - 新的数据结构和 API 已经可以使用 - 只需要更新 settings.php 的界面部分即可完成整个重构