chore: 清理过时的 steering 文档

删除已完成项目的临时文档:
- AI 设置重构相关文档(已完成,保留 phase-3-complete.md)
- 设置页重组相关文档(已完成,保留 settings-reorganize-complete.md)
- 多 API 管理和测试文档(已完成)
- 各阶段实施计划和测试指南(已完成)

保留的核心文档:
- code-style.md - 代码规范
- communication.md - 交流规范
- settings-page-guide.md - 设置页开发指南
- phase-3-complete.md - AI 重构完成总结
- settings-reorganize-complete.md - 设置页重组完成总结
- mermaid-removal-summary.md - Mermaid 移除总结
- username-comment-detection.md - 用户名评论检测
This commit is contained in:
2026-01-26 14:01:04 +08:00
parent 3e2becf810
commit 8067a54a84
13 changed files with 0 additions and 2389 deletions

View File

@@ -1,144 +0,0 @@
# 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
<!-- ========== AI 功能 ========== -->
<h1 style="color: #5e72e4; margin-top: 50px; font-size: 32px;"><?php _e('AI 功能', 'argon');?></h1>
<!-- API 管理 (h2) -->
<!-- 文章摘要 (h2) -->
<!-- 评论审核 (h2) -->
```
#### 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 的界面部分即可完成整个重构

View File

@@ -1,161 +0,0 @@
# AI 设置页面重构方案
## 重构目标
将当前按提供商分组的 API 管理方式改为统一的 API 列表管理,并重新组织 AI 功能的设置结构。
## 当前结构问题
1. **API 管理分散**:每个提供商独立管理 API用户需要在 10 个提供商之间切换
2. **结构不清晰**AI 摘要和评论审核分散在不同的一级分类中
3. **用户体验差**:添加 API 时需要先选择提供商,然后才能配置
## 新结构设计
### 页面结构
```
AI 功能 (独立 h1不在分类编号中)
├── API 管理 (h2)
│ ├── 已配置的 API 列表(统一显示所有提供商的 API
│ └── 添加新 API输入密钥 → 选择提供商 → 选择模型)
├── 文章摘要 (h2)
│ ├── 启用 AI 摘要
│ ├── 默认服务商选择
│ ├── Prompt 设置
│ └── 排除文章设置
└── 评论审核 (h2)
├── 启用 AI 识别
├── 实时检测模式
├── 关键字管理
├── Prompt 模式
└── 其他配置
```
### 数据结构变更
#### 旧数据结构
```php
// 每个提供商独立存储
argon_ai_openai_apis = [
{id: 'api_1', name: '主API', api_key: 'sk-xxx', ...}
]
argon_ai_anthropic_apis = [...]
// ... 10 个提供商
```
#### 新数据结构
```php
// 统一存储所有 API
argon_ai_apis = [
{
id: 'api_1',
name: '主 OpenAI API',
provider: 'openai',
api_key: 'sk-xxx',
api_endpoint: '',
model: 'gpt-4o-mini',
is_active: false,
created_at: 1234567890
},
{
id: 'api_2',
name: '备用 Claude API',
provider: 'anthropic',
api_key: 'sk-ant-xxx',
api_endpoint: '',
model: 'claude-3-5-sonnet-20241022',
is_active: true,
created_at: 1234567891
}
]
// 当前使用的 API按场景
argon_ai_summary_active_api = 'api_1' // 文章摘要使用的 API
argon_ai_spam_active_api = 'api_2' // 垃圾评论检测使用的 API
```
## 实施步骤
### 步骤 1数据迁移函数
创建 `argon_migrate_ai_apis()` 函数,将旧的分散数据迁移到新的统一结构。
### 步骤 2更新核心函数
- 修改 `argon_get_ai_provider_config()` 支持新数据结构
- 添加 `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
### 步骤 3重构 settings.php
- 移除原有的按提供商分组的 API 配置界面
- 创建新的统一 API 列表界面
- 重新组织 AI 功能的设置结构
### 步骤 4更新 AJAX 处理函数
- 更新所有 API 管理相关的 AJAX 函数
- 支持新的数据结构
### 步骤 5向后兼容
- 在主题加载时自动检测并迁移旧数据
- 保留旧数据作为备份
## 界面设计
### API 管理界面
```
┌─ 已配置的 API ─────────────────────────────────────┐
│ │
│ ● 主 OpenAI API (gpt-4o-mini) │
│ OpenAI (ChatGPT) | sk-xxx... │
│ [测试] [编辑] [删除] │
│ │
│ ○ 备用 Claude API (claude-3-5-sonnet) │
│ Anthropic (Claude) | sk-ant-xxx... │
│ [测试] [编辑] [删除] │
│ │
│ [+ 添加新 API] │
└─────────────────────────────────────────────────────┘
添加/编辑 API:
┌─────────────────────────────────────────────────────┐
│ 配置名称: [主 OpenAI API_________________] │
│ API 密钥: [sk-xxx_______________________] [显示] │
│ 提供商: [OpenAI (ChatGPT) ▼] │
│ API 端点: [_____________________________] (可选) │
│ 模型: [gpt-4o-mini__________________] [刷新] │
│ │
│ [保存] [取消] │
└─────────────────────────────────────────────────────┘
```
### 文章摘要设置
```
启用 AI 摘要: [启用 ▼]
默认使用 API: [主 OpenAI API ▼]
Prompt 设置: [...]
排除文章 ID: [...]
```
### 评论审核设置
```
启用 AI 识别: [☑] 启用 AI 自动识别垃圾评论
默认使用 API: [备用 Claude API ▼]
实时检测模式: [智能抽查 ▼]
...
```
## 优势
1. **统一管理**:所有 API 在一个列表中,一目了然
2. **灵活配置**:不同场景可以使用不同的 API
3. **易于添加**:添加 API 时直接输入密钥和选择提供商
4. **更好的 UX**:不需要在多个提供商之间切换
## 注意事项
1. **数据迁移**:确保旧数据能够正确迁移到新结构
2. **向后兼容**:保留旧数据作为备份,以防迁移失败
3. **测试充分**:需要测试所有 AI 功能是否正常工作
4. **文档更新**:更新用户文档说明新的配置方式

View File

@@ -1,158 +0,0 @@
# AI 垃圾评论检测优化方案
## 当前问题
1. **Prompt 单一**:只有一个固定的 Prompt无法适应不同场景
2. **缺少置信度**AI 判断没有置信度评分,无法区分确定性高低
3. **处理过于机械**:直接根据 AI 结果自动处理,缺少灵活性
4. **缺少上下文**:只分析评论本身,没有考虑文章内容和用户历史
5. **无学习机制**:无法根据管理员的审核结果优化判断
## 优化方案
### 1. 多级 Prompt 系统
**极简模式minimal**
- 适用场景API 费用敏感、快速检测
- Token 消耗:约 100-150 tokens
- 特点:只判断是否垃圾,理由简短
**标准模式standard** - 默认
- 适用场景:日常使用,平衡准确性和成本
- Token 消耗:约 200-300 tokens
- 特点:详细审核标准,包含置信度和处理建议
**增强模式enhanced**
- 适用场景:重要内容、疑难案例
- Token 消耗:约 300-500 tokens
- 特点:多维度分析,包含综合分析说明
### 2. 智能置信度系统
AI 返回置信度0-1
- **0.9-1.0**:非常确定 → 可自动处理
- **0.7-0.9**:比较确定 → 建议自动处理
- **0.5-0.7**:中等确定 → 建议人工审核
- **0.0-0.5**:不太确定 → 必须人工审核
### 3. 智能处理建议
AI 返回处理建议:
- **auto**:自动处理(高置信度垃圾内容)
- **review**:建议人工审核(中等置信度或边缘情况)
- **approve**:建议直接通过(正常内容)
管理员可设置:
- 只有置信度 > 0.85 才自动处理
- 置信度 0.5-0.85 标记为待审核
- 置信度 < 0.5 直接通过并记录
### 4. 上下文增强
评论检测时提供:
- **文章信息**:标题、摘要(判断相关性)
- **用户历史**:检测次数、通过率(判断可信度)
- **评论时间**:判断是否为批量发送
- **IP 地址**:判断是否为已知垃圾来源
### 5. 多维度分析
AI 分析维度:
- **内容合规性**:是否违规
- **内容质量**:是否有实质性内容
- **用户行为**:用户名、邮箱、网站是否可疑
- **上下文相关性**:与文章主题的相关性
### 6. 学习优化机制
记录管理员的审核决策:
- 管理员批准了 AI 标记的垃圾评论 → 降低该类型的检测阈值
- 管理员拒绝了 AI 的判断 → 提高该类型的检测阈值
- 定期分析误判率,优化 Prompt
## 实施步骤
### 步骤 1添加 Prompt 模式选择
在设置页添加选项:
```php
<select name="argon_comment_spam_detection_prompt_mode">
<option value="minimal">极简模式(省 token</option>
<option value="standard" selected>标准模式(推荐)</option>
<option value="enhanced">增强模式(更准确)</option>
<option value="custom">自定义 Prompt</option>
</select>
```
### 步骤 2优化检测函数
添加新函数:
- `argon_get_spam_detection_prompt($mode)` - 获取不同模式的 Prompt
- `argon_build_comment_context($comment)` - 构建评论上下文
- `argon_should_auto_process($result)` - 根据置信度判断是否自动处理
### 步骤 3优化处理逻辑
根据 AI 的建议和置信度:
```php
if ($confidence > 0.85 && $suggestion === 'auto') {
// 自动处理
} elseif ($confidence > 0.5) {
// 标记为待审核
} else {
// 直接通过,记录低置信度
}
```
### 步骤 4添加学习机制
记录管理员操作:
```php
// 管理员批准/拒绝 AI 判断时
update_option('argon_spam_detection_feedback_' . $pattern_hash, [
'ai_decision' => $ai_result,
'admin_decision' => $admin_action,
'timestamp' => time()
]);
```
### 步骤 5优化显示界面
在后台评论列表显示:
- AI 置信度标签
- 处理建议
- 综合分析(鼠标悬停显示)
## 预期效果
1. **准确率提升**:通过多维度分析和置信度评分,减少误判
2. **灵活性增强**:管理员可根据置信度选择处理方式
3. **成本优化**:提供多级 Prompt平衡准确性和成本
4. **持续优化**:通过学习机制不断提升判断准确性
5. **用户体验**:减少误杀正常评论,提升用户满意度
## 配置建议
### 小型博客(评论量 < 100/天)
- Prompt 模式:标准模式
- 实时检测:智能抽查 20%
- 自动处理阈值:置信度 > 0.9
### 中型博客(评论量 100-500/天)
- Prompt 模式:标准模式
- 实时检测:智能抽查 30%
- 自动处理阈值:置信度 > 0.85
### 大型博客(评论量 > 500/天)
- Prompt 模式:极简模式
- 实时检测:智能抽查 40%
- 自动处理阈值:置信度 > 0.8
- 定期使用增强模式批量扫描待审核评论
## 注意事项
1. **API 成本**:增强模式会消耗更多 tokens建议按需使用
2. **响应时间**上下文信息越多AI 响应时间越长
3. **隐私保护**:不要将敏感信息(如完整邮箱)发送给 AI
4. **误判处理**:始终提供人工审核入口,避免误杀
5. **定期review**:定期检查 AI 判断结果,优化 Prompt

View File

@@ -1,136 +0,0 @@
# 多 API 管理功能设计
## 功能概述
为每个 AI 服务商支持配置多个 API用户可以
- 为同一服务商添加多个 API 配置(不同的 Key、端点、模型
- 选择其中一个作为当前使用的 API
- 方便实现负载均衡、备用切换、不同场景使用不同配置等需求
## 数据结构
### 配置存储格式
```php
// 存储在 WordPress options 中
// 键名argon_ai_{provider}_apis
// 值JSON 数组
[
{
"id": "api_1",
"name": "主 API",
"api_key": "sk-xxx",
"api_endpoint": "",
"model": "gpt-4o-mini",
"is_active": true
},
{
"id": "api_2",
"name": "备用 API",
"api_key": "sk-yyy",
"api_endpoint": "https://api.custom.com/v1/chat/completions",
"model": "gpt-4o",
"is_active": false
}
]
```
### 当前使用的 API ID
```php
// 键名argon_ai_{provider}_active_api
// 值字符串API 的 ID
"api_1"
```
## 界面设计
### 设置页布局
```
AI 服务商: [OpenAI ▼]
┌─ OpenAI 配置 ─────────────────────────────┐
│ │
│ 已配置的 API: │
│ ○ 主 API (gpt-4o-mini) [编辑] [删除]│
│ ● 备用 API (gpt-4o) [编辑] [删除]│
│ │
│ [+ 添加新 API 配置] │
│ │
└────────────────────────────────────────────┘
添加/编辑 API 配置:
┌────────────────────────────────────────────┐
│ 配置名称: [主 API_______________] │
│ API 密钥: [sk-xxx______________] [显示] │
│ API 端点: [___________________] (可选) │
│ 模型: [gpt-4o-mini_________] [刷新] │
│ │
│ [保存] [取消] │
└────────────────────────────────────────────┘
```
## 实现步骤
### 1. 数据层
- `argon_get_provider_apis($provider)` - 获取提供商的所有 API 配置
- `argon_get_active_api($provider)` - 获取当前使用的 API 配置
- `argon_add_provider_api($provider, $config)` - 添加 API 配置
- `argon_update_provider_api($provider, $api_id, $config)` - 更新 API 配置
- `argon_delete_provider_api($provider, $api_id)` - 删除 API 配置
- `argon_set_active_api($provider, $api_id)` - 设置当前使用的 API
### 2. 界面层
- 为每个提供商显示 API 列表
- 添加/编辑表单(可折叠)
- 单选框选择当前使用的 API
- AJAX 操作(添加、编辑、删除、切换)
### 3. 调用层
- 更新 `argon_get_ai_provider_config()` 函数
- 从多个 API 中获取当前激活的配置
- 保持向后兼容(如果没有配置多 API使用原有逻辑
## 使用场景
### 场景 1负载均衡
- 配置多个 OpenAI API Key
- 手动或自动切换使用不同的 Key
- 避免单个 Key 达到速率限制
### 场景 2备用切换
- 主 API 配置官方端点
- 备用 API 配置代理端点
- 主 API 失败时手动切换到备用
### 场景 3不同场景使用不同配置
- API 1使用 gpt-4o-mini快速、便宜用于评论检测
- API 2使用 gpt-4o准确、贵用于文章摘要
- 根据使用场景选择不同的 API
### 场景 4测试与生产分离
- API 1测试环境配置
- API 2生产环境配置
- 方便切换测试
## 向后兼容
如果用户已有旧配置(单 API 模式):
1. 自动迁移到新格式
2. 创建一个名为"默认配置"的 API
3. 设置为当前使用
## 未来扩展
### 自动切换(可选)
- 检测 API 调用失败
- 自动切换到下一个可用的 API
- 记录切换日志
### 负载均衡(可选)
- 轮询模式:依次使用不同的 API
- 随机模式:随机选择一个 API
- 权重模式:根据权重分配使用频率
### 健康检查(可选)
- 定期检测 API 可用性
- 标记不可用的 API
- 自动禁用失败的 API

View File

@@ -1,219 +0,0 @@
# 多 API 管理功能测试指南
## 测试环境
- WordPress 后台 → 外观 → Argon 主题选项 → 文章功能 → AI 文章摘要
- 选择任意 AI 服务商(如 OpenAI
## 功能特性
### 1. 多 API 配置管理
- 每个 AI 服务商可以配置多个 API
- 每个 API 配置包含配置名称、API 密钥、API 端点(可选)、模型(可选)
- 通过单选框选择当前使用的 API
- 支持添加、编辑、删除 API 配置
### 2. 模型列表刷新
- 每个 API 配置都可以独立刷新模型列表
- 根据配置的 API 密钥和端点动态获取可用模型
- 支持从模型列表中快速选择并应用
### 3. 向后兼容
- 如果用户之前没有配置多 API系统会自动从旧配置迁移
- 创建一个名为"默认配置"的 API 并设置为激活状态
## 测试步骤
### 步骤 1添加第一个 API 配置
**操作**
1. 选择 AI 服务商(如 OpenAI
2. 点击"添加新 API 配置"按钮
3. 填写配置信息:
- 配置名称:主 API
- API 密钥sk-test-key-1
- API 端点:(留空或填写自定义端点)
- 模型:(留空或填写模型名称)
4. 点击"刷新"按钮测试获取模型列表
5. 从模型列表中选择一个模型
6. 点击"使用选中的模型"按钮
7. 点击"保存"按钮
**预期结果**
- 表单隐藏
- 显示新添加的 API 配置
- 该 API 自动被选中(单选框勾选)
- 显示配置名称、模型、密钥前缀
### 步骤 2添加第二个 API 配置
**操作**
1. 再次点击"添加新 API 配置"按钮
2. 填写配置信息:
- 配置名称:备用 API
- API 密钥sk-test-key-2
- API 端点https://api.custom.com/v1/chat/completions
- 模型gpt-4o
3. 点击"保存"按钮
**预期结果**
- 显示两个 API 配置
- 第一个 API 仍然被选中
- 第二个 API 未被选中
### 步骤 3切换激活的 API
**操作**
1. 点击第二个 API 的单选框
**预期结果**
- 第二个 API 被选中
- 第一个 API 取消选中
### 步骤 4编辑 API 配置
**操作**
1. 点击第一个 API 的"编辑"按钮
2. 修改配置名称为"主 API已更新"
3. 点击"刷新"按钮重新获取模型列表
4. 选择一个不同的模型
5. 点击"保存"按钮
**预期结果**
- 表单隐藏
- 第一个 API 的名称和模型更新
- 激活状态保持不变(第二个 API 仍然被选中)
### 步骤 5尝试删除激活的 API
**操作**
1. 点击第二个 API当前激活的"删除"按钮
**预期结果**
- 弹出错误提示:"无法删除当前正在使用的 API 配置,请先切换到其他 API"
- API 未被删除
### 步骤 6删除非激活的 API
**操作**
1. 点击第一个 API未激活的"删除"按钮
2. 在确认对话框中点击"确定"
**预期结果**
- 第一个 API 被删除
- 只剩下第二个 API
- 第二个 API 仍然被选中
### 步骤 7测试模型刷新功能
**操作**
1. 点击"添加新 API 配置"
2. 填写 API 密钥
3. 点击"刷新"按钮
**预期结果**
- 按钮显示加载状态(图标旋转)
- 显示"加载中..."提示
- 成功后显示可用模型列表
- 可以选择模型并应用到输入框
### 步骤 8保存设置
**操作**
1. 滚动到页面底部
2. 点击"保存更改"按钮
**预期结果**
- 显示"设置已保存"提示
- 刷新页面后,配置仍然存在
- 激活的 API 保持选中状态
### 步骤 9测试 AI 摘要生成
**操作**
1. 前往任意文章页面
2. 查看是否显示 AI 摘要
**预期结果**
- 使用当前激活的 API 配置生成摘要
- 摘要正常显示
## 边界情况测试
### 测试 1空配置名称
- 不填写配置名称,直接点击保存
- 预期:弹出提示"请输入配置名称"
### 测试 2空 API 密钥
- 只填写配置名称,不填写 API 密钥
- 预期:弹出提示"请输入 API 密钥"
### 测试 3刷新模型时未填写密钥
- 不填写 API 密钥,直接点击刷新
- 预期:弹出提示"请先输入 API 密钥"
### 测试 4删除最后一个 API
- 当只剩一个 API 时,尝试删除
- 预期:如果是激活的,无法删除;如果不是激活的,可以删除
### 测试 5切换服务商
- 切换到不同的 AI 服务商(如 DeepSeek
- 预期:显示该服务商的 API 配置列表
### 测试 6向后兼容性测试
- 如果之前有旧的单 API 配置
- 预期:自动迁移为"默认配置"并设置为激活
## 功能验证清单
- [ ] 添加第一个 API 配置
- [ ] 添加第二个 API 配置
- [ ] 切换激活的 API
- [ ] 编辑 API 配置
- [ ] 尝试删除激活的 API应失败
- [ ] 删除非激活的 API
- [ ] 刷新模型列表
- [ ] 从模型列表选择并应用模型
- [ ] 保存设置并刷新页面
- [ ] 验证数据持久化
- [ ] 测试空配置名称
- [ ] 测试空 API 密钥
- [ ] 测试切换服务商
- [ ] 测试 AI 摘要生成功能
- [ ] 测试向后兼容性
## 已知问题
## 修复记录
### 2026-01-26
- 修复删除功能:添加激活状态检查,防止删除当前使用的 API
- 修复保存逻辑:编辑时正确保留激活状态
- 优化体验:添加第一个 API 时自动设置为激活
- 添加模型刷新功能:支持动态获取可用模型列表
- 修复配置获取的错误处理:防止空配置导致 Fatal Error
- 改进向后兼容性:自动迁移旧配置到新格式
## 使用场景
### 场景 1负载均衡
- 配置多个 OpenAI API Key
- 手动切换使用不同的 Key
- 避免单个 Key 达到速率限制
### 场景 2备用切换
- 主 API 配置官方端点
- 备用 API 配置代理端点
- 主 API 失败时手动切换到备用
### 场景 3不同场景使用不同配置
- API 1使用 gpt-4o-mini快速、便宜
- API 2使用 gpt-4o准确、贵
- 根据需求切换不同的 API
### 场景 4测试与生产分离
- API 1测试环境配置
- API 2生产环境配置
- 方便切换测试

View File

@@ -1,224 +0,0 @@
# AI 设置重构 - 第一阶段完成总结
## 📅 完成时间
2026-01-26
## ✅ 第一阶段:后端系统开发(已完成)
### 1. 核心功能实现
#### 数据迁移系统
-`argon_migrate_ai_apis()` - 自动迁移旧数据到新结构
- ✅ 在主题加载时自动执行迁移
- ✅ 保留旧数据作为备份
- ✅ 迁移状态标记(`argon_ai_apis_migrated`
#### 统一 API 管理函数
-`argon_get_all_apis()` - 获取所有 API 配置
-`argon_get_api_by_id($api_id)` - 根据 ID 获取 API
-`argon_add_api($config)` - 添加新 API
-`argon_update_api($api_id, $config)` - 更新 API
-`argon_delete_api($api_id)` - 删除 API保护正在使用的 API
-`argon_set_active_api_for_scenario($scenario, $api_id)` - 场景化 API 设置
-`argon_get_active_api_config($scenario)` - 获取场景的活动 API
#### 向后兼容
- ✅ 更新 `argon_get_ai_provider_config()` 优先使用新系统
- ✅ 回退机制:新系统无数据时使用旧系统
- ✅ 三层回退:新系统 → 旧多 API 系统 → 旧单 API 系统
#### AJAX 接口
-`argon_ajax_add_unified_api()` - 添加 API
-`argon_ajax_update_unified_api()` - 更新 API
-`argon_ajax_delete_unified_api()` - 删除 API
-`argon_ajax_set_active_unified_api()` - 设置活动 API
-`argon_ajax_get_all_unified_apis()` - 获取所有 API
### 2. 数据结构设计
#### 新数据结构
```php
// 统一存储argon_ai_apis
[
{
'id' => 'api_1737878400_1234',
'name' => '主 OpenAI API',
'provider' => 'openai',
'api_key' => 'sk-xxx',
'api_endpoint' => '',
'model' => 'gpt-4o-mini',
'is_active' => false,
'created_at' => 1737878400
}
]
// 场景化配置
argon_ai_summary_active_api = 'api_1737878400_1234' // 文章摘要
argon_ai_spam_active_api = 'api_1737878400_5678' // 评论审核
```
### 3. 测试工具
#### 测试脚本
-`test-unified-api-system.php` - 完整的系统测试脚本
- 测试内容:
- 函数存在性检查
- 数据迁移状态
- API 配置查看
- 旧数据检查
- 场景化 API 测试
- 向后兼容性测试
### 4. 文档
#### 设计文档
-`ai-settings-refactor-plan.md` - 完整的重构方案
-`ai-refactor-next-steps.md` - 下一步工作计划
-`phase-1-complete.md` - 第一阶段总结(本文档)
#### 界面草稿
-`tmp/ai-settings-new-structure.php` - 新 UI 设计草稿
### 5. Git 提交记录
```
5254ee0 - feat: 添加统一 API 管理系统
2c25caa - feat: 添加统一 API 系统测试脚本和文档
```
## 🎯 第一阶段成果
### 优势
1. **完全向后兼容**:不影响现有用户的配置
2. **自动迁移**:无需手动操作,自动完成数据迁移
3. **场景化配置**:文章摘要和评论审核可使用不同 API
4. **安全保护**:不允许删除正在使用的 API
5. **完整测试**:提供测试脚本验证功能
### 技术亮点
1. **三层回退机制**:确保在任何情况下都能获取到 API 配置
2. **数据备份**:旧数据完整保留,可随时回滚
3. **独立 AJAX 端点**:避免与现有代码冲突
4. **场景化设计**:为未来扩展更多场景预留空间
## 📋 第二阶段:测试和验证(当前阶段)
### 目标
验证第一阶段开发的功能是否正常工作
### 任务清单
#### 1. 运行测试脚本
- [ ] 访问 `test-unified-api-system.php`
- [ ] 检查所有测试项是否通过
- [ ] 验证数据迁移是否成功
#### 2. 功能测试
- [ ] 测试 AI 文章摘要生成
- [ ] 测试 AI 垃圾评论检测
- [ ] 验证向后兼容性
#### 3. 问题排查
- [ ] 检查小米 Mimo API 是否正常工作
- [ ] 查看错误日志
- [ ] 修复发现的问题
### 测试步骤
#### 步骤 1访问测试页面
```
https://your-site.com/wp-content/themes/argon/test-unified-api-system.php
```
#### 步骤 2检查测试结果
- 所有函数是否存在?
- 数据是否成功迁移?
- API 配置是否正确?
- 向后兼容是否正常?
#### 步骤 3测试 AI 功能
- 创建一篇新文章,查看是否生成 AI 摘要
- 发表一条评论,查看 AI 检测是否工作
- 访问 AI 查询页面,查看统计数据
#### 步骤 4问题记录
如果发现问题,记录:
- 问题描述
- 错误信息
- 复现步骤
- 预期行为
## 📊 第三阶段UI 重构(待开始)
### 目标
在确认后端功能正常后,开始 UI 重构
### 实施策略
采用**渐进式重构**
#### 阶段 3.1:添加新 UI与旧 UI 共存)
- 在 settings.php 中添加新的 AI 功能部分
- 保留旧的设置界面
- 用户可以选择使用新界面或旧界面
#### 阶段 3.2:测试新 UI
- 测试所有交互功能
- 收集用户反馈
- 修复发现的问题
#### 阶段 3.3:移除旧 UI
- 确认新 UI 稳定后
- 移除旧的设置界面
- 更新文档
## 🔍 当前状态
### 已完成
- ✅ 后端核心功能开发
- ✅ 数据迁移系统
- ✅ AJAX 接口
- ✅ 测试工具
- ✅ 文档
### 进行中
- 🔄 第二阶段:测试和验证
### 待开始
- ⏳ 第三阶段UI 重构
## 💡 建议
### 立即行动
1. **运行测试脚本**:验证系统是否正常工作
2. **检查错误日志**:查看是否有错误信息
3. **测试 AI 功能**:确认文章摘要和评论检测正常
### 如果测试通过
- 可以开始第三阶段的 UI 重构
- 或者先解决小米 Mimo 的问题
### 如果测试失败
- 记录错误信息
- 分析问题原因
- 修复后再次测试
## 📞 需要帮助?
如果在测试过程中遇到问题,请提供:
1. 测试脚本的输出结果
2. 错误日志内容
3. 具体的问题描述
我将帮助您分析和解决问题。
## 🎉 总结
第一阶段的后端开发已经完成,新的统一 API 管理系统已经就绪。现在需要进行测试验证,确保功能正常工作后,再进行 UI 重构。
采用分阶段实施的策略,可以:
- ✅ 降低风险
- ✅ 逐步验证
- ✅ 及时发现问题
- ✅ 保证质量
让我们继续第二阶段的测试工作!

View File

@@ -1,424 +0,0 @@
# 第二阶段:测试和验证指南
## 📅 开始时间
2026-01-26
## 🎯 测试目标
验证统一 API 管理系统的后端功能是否正常工作,为第三阶段的 UI 重构做准备。
## 📋 测试清单
### 1. 系统状态检查 ✅
**测试文件**: `test-system-status.php`
**访问方式**:
```
https://your-site.com/wp-content/themes/argon/test-system-status.php
```
**检查项目**:
- [ ] 所有核心函数已加载
- [ ] 数据迁移状态正常
- [ ] API 配置正确显示
- [ ] 场景配置正常工作
- [ ] 旧数据已备份
**预期结果**:
- 显示"✓ 统一 API 管理系统已就绪!"
- 如果有旧配置,应该已经迁移到新系统
- 文章摘要和评论审核场景应该有活动的 API
---
### 2. 详细功能测试 ✅
**测试文件**: `test-unified-api-system.php`
**访问方式**:
```
https://your-site.com/wp-content/themes/argon/test-unified-api-system.php
```
**检查项目**:
- [ ] 函数存在性检查通过
- [ ] 数据迁移成功
- [ ] API 配置列表正确显示
- [ ] 旧数据检查正常
- [ ] 场景化 API 测试通过
- [ ] 向后兼容性测试通过
**预期结果**:
- 所有测试项显示绿色 ✓
- 测试总结显示"✓ 统一 API 管理系统已就绪!"
---
### 3. AI 功能实际测试
#### 3.1 文章摘要测试
**步骤**:
1. 确保已配置文章摘要的活动 API
2. 创建或编辑一篇文章
3. 发布文章
4. 查看文章页面,检查是否显示 AI 摘要
**检查点**:
- [ ] AI 摘要正常生成
- [ ] 使用的是正确的 API检查日志
- [ ] 没有错误信息
**如果失败**:
- 检查 WordPress 错误日志
- 查看文章的 `_argon_ai_summary_error` meta
- 确认 API 密钥和端点正确
#### 3.2 评论审核测试
**步骤**:
1. 确保已配置评论审核的活动 API
2. 启用 AI 垃圾评论检测
3. 发表一条测试评论
4. 检查评论是否被正确处理
**检查点**:
- [ ] AI 检测正常工作
- [ ] 使用的是正确的 API
- [ ] 检测结果合理
**如果失败**:
- 检查 WordPress 错误日志
- 查看评论的 meta 数据
- 确认 API 密钥和端点正确
---
### 4. 小米 Mimo API 专项测试
**背景**: 用户反馈小米 Mimo 无法使用
**测试步骤**:
#### 4.1 检查配置
```php
// 在 test-system-status.php 中查看
// 小米 Mimo 的配置是否正确
```
**检查点**:
- [ ] API 密钥格式正确
- [ ] 端点是否为 `https://api.mimo.xiaomi.com/v1/chat/completions`
- [ ] 模型是否为 `MiMo-V2-Flash` 或其他有效模型
#### 4.2 手动测试 API
创建测试脚本 `test-xiaomi-api.php`:
```php
<?php
require_once('../../../wp-load.php');
if (!current_user_can('manage_options')) {
wp_die('权限不足');
}
// 获取小米 Mimo 配置
$config = argon_get_active_api_config('summary');
if ($config['provider'] !== 'xiaomi') {
echo '当前活动 API 不是小米 Mimo';
exit;
}
// 测试 API 调用
$api_key = $config['api_key'];
$api_endpoint = !empty($config['api_endpoint'])
? $config['api_endpoint']
: 'https://api.mimo.xiaomi.com/v1/chat/completions';
$model = !empty($config['model']) ? $config['model'] : 'MiMo-V2-Flash';
$data = [
'model' => $model,
'messages' => [
[
'role' => 'user',
'content' => '你好,这是一个测试。请回复"测试成功"。'
]
],
'max_tokens' => 100
];
$response = wp_remote_post($api_endpoint, [
'headers' => [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer ' . $api_key
],
'body' => json_encode($data),
'timeout' => 30
]);
echo '<h1>小米 Mimo API 测试</h1>';
echo '<h2>请求配置</h2>';
echo '<pre>';
echo 'API 端点: ' . $api_endpoint . "\n";
echo '模型: ' . $model . "\n";
echo 'API 密钥: ' . substr($api_key, 0, 12) . '...' . "\n";
echo '</pre>';
echo '<h2>响应结果</h2>';
if (is_wp_error($response)) {
echo '<p style="color: red;">错误: ' . $response->get_error_message() . '</p>';
} else {
$status_code = wp_remote_retrieve_response_code($response);
$body = wp_remote_retrieve_body($response);
echo '<p>状态码: ' . $status_code . '</p>';
echo '<h3>响应内容</h3>';
echo '<pre>' . htmlspecialchars($body) . '</pre>';
if ($status_code === 200) {
$result = json_decode($body, true);
if (isset($result['choices'][0]['message']['content'])) {
echo '<p style="color: green;">✓ API 调用成功!</p>';
echo '<p>AI 回复: ' . htmlspecialchars($result['choices'][0]['message']['content']) . '</p>';
}
} else {
echo '<p style="color: red;">✗ API 调用失败</p>';
}
}
?>
```
**检查点**:
- [ ] API 返回 200 状态码
- [ ] 响应包含有效的 JSON
- [ ] 能够正确解析 AI 回复
**常见问题**:
1. **401 Unauthorized**: API 密钥无效或过期
2. **403 Forbidden**: API 密钥没有权限
3. **404 Not Found**: API 端点错误
4. **429 Too Many Requests**: 超过速率限制
5. **500 Internal Server Error**: 服务器错误
---
### 5. 向后兼容性测试
**测试场景**: 确保旧代码仍然能正常工作
**测试步骤**:
1. **测试旧的 API 获取函数**:
```php
// 在 test-unified-api-system.php 中已包含
$old_config = argon_get_ai_provider_config('openai');
```
**检查点**:
- [ ] 函数返回有效配置
- [ ] 配置包含 api_key, api_endpoint, model, provider
- [ ] 如果新系统有数据,优先使用新系统
- [ ] 如果新系统无数据,回退到旧系统
2. **测试多 API 管理函数**:
```php
// 旧的多 API 函数应该仍然可用
$openai_apis = argon_get_provider_apis('openai');
$active_api = argon_get_active_api('openai');
```
**检查点**:
- [ ] 旧函数仍然可用
- [ ] 返回的数据格式正确
---
### 6. 错误日志检查
**位置**:
- WordPress 调试日志: `wp-content/debug.log`
- 服务器错误日志: 根据服务器配置
**检查内容**:
- [ ] 没有 PHP Fatal Error
- [ ] 没有 PHP Warning除非是已知的
- [ ] 没有 AI API 调用错误
- [ ] 没有数据迁移错误
**如何启用调试**:
`wp-config.php` 中添加:
```php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
```
---
## 📊 测试结果记录
### 系统状态
- [ ] ✅ 通过
- [ ] ⚠️ 部分通过(记录问题)
- [ ] ❌ 失败(记录错误)
**问题记录**:
```
问题 1: [描述]
- 错误信息:
- 复现步骤:
- 预期行为:
- 实际行为:
问题 2: [描述]
...
```
### AI 功能测试
- [ ] ✅ 文章摘要正常
- [ ] ✅ 评论审核正常
- [ ] ✅ 小米 Mimo 正常
**问题记录**:
```
[如有问题,在此记录]
```
### 向后兼容性
- [ ] ✅ 旧函数正常工作
- [ ] ✅ 数据迁移成功
- [ ] ✅ 回退机制正常
---
## 🔧 问题排查指南
### 问题 1: 数据迁移失败
**症状**: `argon_ai_apis_migrated` 为 'false'
**排查步骤**:
1. 检查是否有旧数据
2. 查看错误日志
3. 手动执行迁移函数
4. 检查数据库权限
**解决方案**:
```php
// 手动触发迁移
delete_option('argon_ai_apis_migrated');
argon_migrate_ai_apis();
```
### 问题 2: API 配置为空
**症状**: `argon_get_all_apis()` 返回空数组
**排查步骤**:
1. 检查是否有旧配置
2. 检查数据迁移状态
3. 查看数据库中的 `argon_ai_apis` 选项
**解决方案**:
- 如果有旧配置但未迁移,手动触发迁移
- 如果没有旧配置,需要在设置页面添加新配置
### 问题 3: AI 功能不工作
**症状**: 文章摘要或评论审核不生成结果
**排查步骤**:
1. 检查是否配置了活动 API
2. 检查 API 密钥是否有效
3. 查看错误日志
4. 测试 API 连通性
**解决方案**:
- 确保设置了活动 API
- 验证 API 密钥和端点
- 检查网络连接
- 查看 API 提供商的状态
### 问题 4: 小米 Mimo 无法使用
**可能原因**:
1. API 密钥格式错误
2. API 端点错误
3. 模型名称错误
4. 网络连接问题
5. API 配额用尽
**排查步骤**:
1. 使用 `test-xiaomi-api.php` 测试
2. 检查 API 密钥格式(应该是 `sk-` 开头)
3. 确认端点为 `https://api.mimo.xiaomi.com/v1/chat/completions`
4. 确认模型为 `MiMo-V2-Flash`
5. 查看详细的错误响应
---
## ✅ 测试通过标准
满足以下条件即可进入第三阶段UI 重构):
1. **核心功能**:
- [x] 所有核心函数正常工作
- [x] 数据迁移成功
- [x] API 配置正确存储和读取
2. **AI 功能**:
- [ ] 文章摘要正常生成
- [ ] 评论审核正常工作
- [ ] 至少一个 AI 提供商可用
3. **向后兼容**:
- [x] 旧函数仍然可用
- [x] 旧数据已备份
- [x] 回退机制正常
4. **无严重错误**:
- [ ] 没有 PHP Fatal Error
- [ ] 没有数据丢失
- [ ] 没有功能退化
---
## 📝 测试完成后的行动
### 如果测试通过 ✅
1. 更新文档,记录测试结果
2. 准备进入第三阶段UI 重构)
3. 创建 Git 分支用于 UI 开发
### 如果测试失败 ❌
1. 记录所有问题和错误信息
2. 分析问题原因
3. 修复问题
4. 重新测试
5. 确认修复后再进入下一阶段
---
## 🔗 相关文件
- `test-system-status.php` - 快速状态检查
- `test-unified-api-system.php` - 详细功能测试
- `test-xiaomi-api.php` - 小米 Mimo 专项测试(需创建)
- `functions.php` - 核心函数实现
- `.kiro/steering/phase-1-complete.md` - 第一阶段总结
- `.kiro/steering/ai-refactor-next-steps.md` - 下一步计划
---
## 📞 需要帮助?
如果在测试过程中遇到问题,请提供:
1. 测试脚本的完整输出
2. WordPress 错误日志内容
3. 具体的错误信息和截图
4. 复现步骤
我将帮助您分析和解决问题。

View File

@@ -1,210 +0,0 @@
# 第三阶段UI 重构实施计划
## 📅 开始时间
2026-01-26
## 🎯 实施目标
完成 settings.php 的 UI 重构,移除旧代码和向后兼容逻辑,实现统一的 AI 功能管理界面。
## 📋 实施步骤
### 步骤 1添加补充的 AJAX 函数到 functions.php
需要添加的函数:
- `argon_ajax_get_unified_api()` - 获取单个 API 配置
- `argon_ajax_test_unified_api()` - 测试 API 连通性
**文件位置**: `tmp/additional-ajax-functions.php`
**插入位置**: functions.php 的 AJAX 函数区域(约第 8900 行之后)
### 步骤 2在 settings.php 中插入新的 AI 功能部分
**插入位置**: 第 1985 行之前(在"文章功能"分类之前)
**内容来源**:
- `tmp/new-ai-settings-section.php` - HTML 结构
- `tmp/new-ai-settings-js.php` - JavaScript 交互代码
**需要包含的部分**:
1. AI 功能 h1 标题
2. API 管理 (h2)
- 已配置的 API 列表
- 添加/编辑 API 表单
3. 文章摘要 (h2)
- 启用开关
- 选择 API
- Prompt 设置
- 排除文章 ID
- 清除缓存按钮
4. 评论审核 (h2)
- 启用开关
- 选择 API
- 其他设置(保留原有)
### 步骤 3移除旧的 AI 设置代码
#### 3.1 移除文章功能中的旧 AI 摘要设置
**位置**: settings.php 第 1989-2600 行左右
**需要移除的内容**:
- 启用 AI 文章摘要
- AI 服务商选择
- 10 个提供商的多 API 配置界面
- 摘要提示词
- 排除文章 ID
- 清除缓存按钮
**保留的内容**:
- 其他文章功能设置(脚注、分享、目录等)
#### 3.2 移除评论设置中的旧 AI 识别部分
**位置**: settings.php 第 4665-4900 行左右
**需要移除的内容**:
- 启用 AI 识别
- 检测策略
- 关键字管理
- Prompt 模式等
**注意**: 这些设置会在新的"评论审核"部分重新添加
### 步骤 4更新选项保存逻辑
**位置**: settings.php 末尾的 `argon_update_themeoptions()` 函数
**需要移除的保存逻辑**:
```php
// 移除
argon_update_option('argon_ai_summary_provider');
// 移除所有提供商的 API 配置保存
// argon_ai_openai_apis, argon_ai_anthropic_apis 等
```
**需要添加的保存逻辑**:
```php
// 场景化 API 设置
argon_update_option('argon_ai_summary_active_api');
argon_update_option('argon_ai_spam_active_api');
```
### 步骤 5移除 functions.php 中的向后兼容代码
**需要移除的内容**:
1. **旧的多 API 管理函数** (约第 7000-7150 行):
- `argon_get_provider_apis()`
- `argon_get_active_api()`
- `argon_add_provider_api()`
- `argon_update_provider_api()`
- `argon_delete_provider_api()`
- `argon_set_active_api()`
2. **数据迁移函数** (约第 7200-7250 行):
- `argon_migrate_ai_apis()`
- `add_action('after_setup_theme', 'argon_migrate_ai_apis')`
3. **argon_get_ai_provider_config() 中的向后兼容逻辑**:
- 移除回退到旧系统的代码
- 只保留从新系统获取配置的逻辑
4. **argon_get_active_api_config() 中的向后兼容逻辑**:
- 移除最后的回退代码
**保留的内容**:
- 所有统一 API 管理函数
- 所有新的 AJAX 函数
### 步骤 6清理测试文件
**可以删除的文件**:
- `test-system-status.php`
- `test-unified-api-system.php`
- `tmp/ai-settings-new-structure.php`
- `tmp/new-ai-settings-section.php`
- `tmp/new-ai-settings-js.php`
- `tmp/additional-ajax-functions.php`
**保留的文件**:
- 所有 steering 文档(作为历史记录)
## 🔍 验证清单
### 功能验证
- [ ] 可以添加新 API
- [ ] 可以编辑 API
- [ ] 可以删除 API
- [ ] 可以测试 API 连通性
- [ ] 可以刷新模型列表
- [ ] 文章摘要可以选择 API
- [ ] 评论审核可以选择 API
- [ ] 不同场景可以使用不同 API
- [ ] 清除摘要缓存功能正常
### 数据验证
- [ ] 旧数据已迁移到新系统
- [ ] 设置保存后正确存储
- [ ] 刷新页面后配置保持
- [ ] AI 功能正常工作
### 界面验证
- [ ] 新界面显示正常
- [ ] 响应式布局正常
- [ ] 交互动画流畅
- [ ] 错误提示清晰
## ⚠️ 注意事项
1. **备份**: 在每一步之前都要备份文件
2. **测试**: 每完成一步都要测试功能
3. **Git**: 每完成一个步骤就提交一次
4. **回滚**: 如果出现问题,立即回滚到上一个提交
## 📊 预计时间
- 步骤 1: 10 分钟
- 步骤 2: 30 分钟
- 步骤 3: 20 分钟
- 步骤 4: 10 分钟
- 步骤 5: 20 分钟
- 步骤 6: 5 分钟
- 测试验证: 30 分钟
**总计**: 约 2 小时
## 🎉 完成标志
当以下条件全部满足时,第三阶段完成:
1. ✅ 新的 AI 功能界面正常显示
2. ✅ 所有 API 管理功能正常工作
3. ✅ 文章摘要和评论审核功能正常
4. ✅ 旧代码已完全移除
5. ✅ 向后兼容代码已移除
6. ✅ 所有测试通过
7. ✅ Git 提交完成
## 📝 Git 提交计划
```
commit 1: feat: 添加统一 API 管理的补充 AJAX 函数
commit 2: feat: 在 settings.php 中添加新的 AI 功能界面
commit 3: refactor: 移除 settings.php 中的旧 AI 设置代码
commit 4: refactor: 更新选项保存逻辑
commit 5: refactor: 移除 functions.php 中的向后兼容代码
commit 6: chore: 清理临时测试文件
commit 7: docs: 更新 AI 设置重构完成文档
```
## 🔗 相关文件
- `functions.php` - 核心函数
- `settings.php` - 设置页面
- `tmp/additional-ajax-functions.php` - 补充函数
- `tmp/new-ai-settings-section.php` - 新界面 HTML
- `tmp/new-ai-settings-js.php` - 新界面 JS
- `.kiro/steering/phase-1-complete.md` - 第一阶段总结
- `.kiro/steering/phase-2-testing-guide.md` - 第二阶段测试指南
- `.kiro/steering/ai-refactor-next-steps.md` - 下一步计划

View File

@@ -1,180 +0,0 @@
# 设置页优化总结
## 已完成的优化
### 阶段一:子分类命名优化 ✅ (commit a9860af)
已成功优化以下子分类名称,使其更加简洁明确:
| 原名称 | 新名称 | 优化说明 |
|--------|--------|----------|
| 各场景验证码 | 场景验证码 | 去除冗余的"各"字 |
| 标题 | 顶栏标题 | 增加"顶栏"前缀,更明确 |
| 文章内标题样式 | 标题样式 | 去除冗余的"文章内"前缀 |
| 左侧栏文章目录 | 文章目录 | 去除冗余的"左侧栏"前缀 |
| 文末附加内容 | 文末内容 | 去除冗余的"附加"二字 |
| 文章头图 (特色图片) | 文章头图 | 去除括号说明 |
| 其他 | 过时提示 | 更明确的功能描述 |
### 阶段二:删除重复项和结构重组 ✅
#### 1. 删除重复的日期格式设置 (commit e667a22)
- 删除了高级设置中重复的日期格式子分类
- 减少16行重复内容
#### 2. 动画效果重组 (commit c9e2c7d)
- 将动画效果从"功能增强"移到"外观样式"
- 包含平滑滚动、进入文章动画、Pjax动画三个设置项
- 删除杂项中重复的动画效果设置
#### 3. 删除错误的顶栏设置 (commit 1c615dd)
- 删除第685-792行之间错误的顶栏设置标题
- 删除错误放置的CDN、子目录、日期格式设置
- 减少107行重复内容
#### 4. 完成结构重组 (commit 2864082)
- 在基础设置中添加子目录设置
- 创建新的"SEO与性能"分类(第9个分类)
- 在SEO与性能中添加SEO、CDN加速、日期格式三个子分类
- CDN和日期格式设置已从错误位置移到正确分类
#### 5. 修正分类编号 (commit ee2976d)
- 将验证码与安全的编号从15改为16
- 所有一级分类编号现在正确(1-16)
### 优化效果
- **提升可读性**:命名更加简洁,用户一眼就能理解功能
- **减少冗余**删除了123行重复内容
- **增强明确性**:模糊的命名改为具体的功能描述
- **结构更合理**:创建了"SEO与性能"新分类,逻辑更清晰
- **保持兼容性**:所有 ID 和 name 属性保持不变
## 优化后的完整结构
```
1. 基础设置 (section-basic) ✅
├── 主题色 (subsection-theme-color)
├── 夜间模式 (subsection-dark-mode)
└── 子目录 (subsection-subdirectory) [新增]
2. 外观样式 (section-appearance) ✅
├── 卡片样式 (subsection-card-style)
├── 字体 (subsection-font)
└── 动画效果 (subsection-animation) [从功能增强移入]
3. 页面布局 (section-layout)
└── 整体布局 (subsection-page-layout)
4. 顶栏设置 (section-toolbar)
├── 基本设置 (subsection-toolbar-basic)
├── 顶栏标题 (subsection-toolbar-title) [已优化命名]
├── 顶栏图标 (subsection-toolbar-icon)
├── 顶栏外观 (subsection-toolbar-appearance)
└── 自定义链接 (subsection-toolbar-links)
5. Banner 设置 (section-banner)
├── Banner 内容 (subsection-banner-content)
├── Banner 外观 (subsection-banner-appearance)
└── Banner 动画 (subsection-banner-animation)
6. 页面背景 (section-background)
├── 背景图片 (subsection-background-image)
└── 透明度与毛玻璃 (subsection-transparency)
7. 侧边栏 (section-sidebar)
├── 作者信息 (subsection-author-info)
├── 扩展功能 (subsection-sidebar-features)
└── 博客公告 (subsection-announcement)
8. 浮动按钮与页脚 (section-fab-footer)
├── 浮动操作按钮 (subsection-fab)
└── 页脚 (subsection-footer)
9. SEO 与性能 (section-seo-performance) ✅ [新建]
├── SEO (subsection-seo)
├── CDN 加速 (subsection-cdn) [从错误位置移入]
└── 日期格式 (subsection-date-format) [从错误位置移入]
10. 文章显示 (section-post-display)
├── Meta 信息 (subsection-post-meta)
├── 文章头图 (subsection-thumbnail) [已优化命名]
├── 标题样式 (subsection-title-style) [已优化命名]
└── 过时提示 (subsection-post-other) [已优化命名]
11. 文章功能 (section-post-features)
├── AI 文章摘要 (subsection-ai-summary)
├── 脚注引用 (subsection-footnote)
├── 分享 (subsection-share)
├── 文章目录 (subsection-toc) [已优化命名]
├── 赞赏 (subsection-donate)
├── 文末内容 (subsection-post-footer) [已优化命名]
└── 相似推荐 (subsection-related-posts)
12. 特殊页面 (section-special-pages)
├── 搜索设置 (subsection-search)
├── 归档页面 (subsection-archive)
└── 友情链接 (subsection-friend-links)
13. 功能增强 (section-enhancements) ✅
├── 代码高亮 (subsection-code-highlight)
├── 数学公式 (subsection-math)
├── Lazyload (subsection-lazyload)
├── 图片放大 (subsection-lightbox)
└── Pangu.js (subsection-pangu)
[动画效果已移到外观样式]
14. 高级设置 (section-advanced) ✅
├── 自定义脚本 (subsection-scripts)
└── 杂项 (subsection-misc)
[SEO、CDN、日期格式已移到SEO与性能]
15. 评论设置 (section-comment)
├── 评论分页 (subsection-comment-pagination)
├── 发送评论 (subsection-comment-submit)
├── 评论功能 (subsection-comment-features)
└── 评论区外观 (subsection-comment-appearance)
16. 验证码与安全 (section-security) ✅
├── 验证码设置 (subsection-captcha)
├── 场景验证码 (subsection-captcha-scenes) [已优化命名]
└── 速率限制 (subsection-rate-limit)
```
## Git 提交历史
1. **a9860af** - feat: 优化设置页子分类命名
2. **e667a22** - feat: 删除高级设置中重复的日期格式设置
3. **c9e2c7d** - feat: 将动画效果从功能增强移到外观样式
4. **1c615dd** - feat: 删除重复的顶栏设置标题及错误放置的设置项
5. **2864082** - feat: 完成设置页结构重组
6. **ee2976d** - fix: 修正验证码与安全分类的编号
## 统计数据
- **原始文件**: 6670 行
- **优化后**: 6757 行
- **删除重复内容**: 123 行
- **新增内容**: 210 行 (子目录设置 + SEO与性能分类)
- **优化的子分类**: 7 个
- **新建的一级分类**: 1 个 (SEO与性能)
- **重组的子分类**: 4 个 (子目录、动画效果、CDN、日期格式)
## 注意事项
1. **保持兼容性** ✅:所有设置项的 `name` 属性保持不变
2. **保持 ID 不变** ✅:所有 `section-*``subsection-*` ID 保持不变
3. **备份文件** ✅:已创建 `settings.php.backup` 备份文件
4. **Git 版本控制** ✅:每个修改都有独立的 commit可随时回滚
## 文件信息
- **原始文件**`settings.php` (6670 行)
- **优化后文件**`settings.php` (6757 行)
- **备份文件**`settings.php.backup`
- **优化脚本**
- `optimize_settings.py` (步骤1)
- `optimize_settings_step3.py` (步骤2)
- `optimize_settings_final.py` (步骤3)
- **修改时间**2026-01-22
- **最后提交**ee2976d

View File

@@ -1,126 +0,0 @@
# Argon 主题设置页结构优化方案
## 优化后的分类结构
```
1. 基础设置 (section-basic)
├── 主题色 (subsection-theme-color)
├── 夜间模式 (subsection-dark-mode)
└── 子目录 (subsection-subdirectory)
2. 外观样式 (section-appearance)
├── 卡片样式 (subsection-card-style)
├── 字体 (subsection-font)
└── 动画效果 (subsection-animation)
3. 页面布局 (section-layout)
└── 整体布局 (subsection-page-layout)
4. 顶栏设置 (section-toolbar)
├── 基本设置 (subsection-toolbar-basic)
├── 顶栏标题 (subsection-toolbar-title)
├── 顶栏图标 (subsection-toolbar-icon)
├── 顶栏外观 (subsection-toolbar-appearance)
└── 自定义链接 (subsection-toolbar-links)
5. Banner 设置 (section-banner)
├── Banner 内容 (subsection-banner-content)
├── Banner 外观 (subsection-banner-appearance)
└── Banner 动画 (subsection-banner-animation)
6. 页面背景 (section-background)
├── 背景图片 (subsection-background-image)
└── 透明度与毛玻璃 (subsection-transparency)
7. 侧边栏 (section-sidebar)
├── 作者信息 (subsection-author-info)
├── 扩展功能 (subsection-sidebar-features)
└── 博客公告 (subsection-announcement)
8. 浮动按钮与页脚 (section-fab-footer)
├── 浮动操作按钮 (subsection-fab)
└── 页脚 (subsection-footer)
9. SEO 与性能 (section-seo-performance)
├── SEO (subsection-seo)
├── CDN 加速 (subsection-cdn)
└── 日期格式 (subsection-date-format)
10. 文章显示 (section-post-display)
├── Meta 信息 (subsection-post-meta)
├── 文章头图 (subsection-thumbnail)
├── 标题样式 (subsection-title-style)
└── 过时提示 (subsection-post-other)
11. 文章功能 (section-post-features)
├── AI 文章摘要 (subsection-ai-summary)
├── 脚注引用 (subsection-footnote)
├── 分享 (subsection-share)
├── 文章目录 (subsection-toc)
├── 赞赏 (subsection-donate)
├── 文末内容 (subsection-post-footer)
└── 相似推荐 (subsection-related-posts)
12. 特殊页面 (section-special-pages)
├── 搜索设置 (subsection-search)
├── 归档页面 (subsection-archive)
└── 友情链接 (subsection-friend-links)
13. 功能增强 (section-enhancements)
├── 代码高亮 (subsection-code-highlight)
├── 数学公式 (subsection-math)
├── Lazyload (subsection-lazyload)
├── 图片放大 (subsection-lightbox)
└── Pangu.js (subsection-pangu)
14. 高级设置 (section-advanced)
├── 自定义脚本 (subsection-scripts)
└── 杂项 (subsection-misc)
15. 评论设置 (section-comment)
├── 评论分页 (subsection-comment-pagination)
├── 发送评论 (subsection-comment-submit)
├── 评论功能 (subsection-comment-features)
├── AI 垃圾评论识别 (subsection-comment-spam-detection)
└── 评论区外观 (subsection-comment-appearance)
16. 验证码与安全 (section-security)
├── 验证码设置 (subsection-captcha)
├── 场景验证码 (subsection-captcha-scenes)
├── 反馈设置 (subsection-feedback)
└── 速率限制 (subsection-rate-limit)
```
## 主要优化点
### 1. 结构调整
- **拆分"高级设置"**:将 SEO、CDN、日期格式独立为"SEO 与性能"分类
- **优化"特殊页面"**:将搜索设置提前,更符合使用频率
- **细化"验证码与安全"**:增加反馈设置子分类
- **完善"评论设置"**:增加 AI 垃圾评论识别子分类
### 2. 命名优化
- "各场景验证码" → "场景验证码"(更简洁)
- "标题" → "顶栏标题"(更明确)
- "文章内标题样式" → "标题样式"(更简洁)
- "左侧栏文章目录" → "文章目录"(更简洁)
- "文末附加内容" → "文末内容"(更简洁)
- "文章头图 (特色图片)" → "文章头图"(更简洁)
- "其他" → "过时提示"(更明确)
- "归档外观" → 合并到"归档页面"
- "归档配置" → 合并到"归档页面"
- "CDN" → "CDN 加速"(更明确)
### 3. 逻辑优化
- 将"子目录"从原"高级设置"移到"基础设置"
- 将"动画效果"从"功能增强"移到"外观样式"
- 将"日期格式"从原位置移到"SEO 与性能"
- 将"自定义脚本"保留在"高级设置"
- 新增"评论区外观"子分类
## 实施说明
1. 保持所有设置项的 ID 不变,确保兼容性
2. 只调整分类标题和层级结构
3. 优化后的结构更符合用户使用习惯
4. 减少了重复和冗余的分类

View File

@@ -1,168 +0,0 @@
# Settings.php 完整重组总结
## 重组完成情况 ✅
已成功完成设置页的完整重组从原来的16个分类扩展到18个分类结构更加合理清晰。
## 最终分类结构18个一级分类
```
1. 基础设置 (section-basic)
├── 主题色 (subsection-theme-color)
├── 夜间模式 (subsection-dark-mode)
└── 子目录 (subsection-subdirectory)
2. 外观样式 (section-appearance)
├── 卡片样式 (subsection-card-style)
├── 字体 (subsection-font)
└── 动画效果 (subsection-animation)
3. 页面布局 (section-layout)
└── 整体布局 (subsection-page-layout)
4. 顶栏设置 (section-toolbar)
├── 基本设置 (subsection-toolbar-basic)
├── 顶栏标题 (subsection-toolbar-title)
├── 顶栏图标 (subsection-toolbar-icon)
├── 顶栏外观 (subsection-toolbar-appearance)
└── 自定义链接 (subsection-toolbar-links)
5. Banner 设置 (section-banner)
├── Banner 内容 (subsection-banner-content)
├── Banner 外观 (subsection-banner-appearance)
└── Banner 动画 (subsection-banner-animation)
6. 页面背景 (section-background)
├── 背景图片 (subsection-background-image)
└── 透明度与毛玻璃 (subsection-transparency)
7. 侧边栏 (section-sidebar)
├── 作者信息 (subsection-author-info)
├── 扩展功能 (subsection-sidebar-features)
└── 博客公告 (subsection-announcement)
8. 浮动按钮 (section-fab) [新建]
└── 浮动操作按钮 (subsection-fab)
9. 页脚设置 (section-footer) [新建]
└── 页脚 (subsection-footer)
10. SEO 与性能 (section-seo-performance)
├── SEO (subsection-seo)
├── CDN 加速 (subsection-cdn)
└── 日期格式 (subsection-date-format)
11. 文章显示 (section-post-display)
├── Meta 信息 (subsection-post-meta)
└── 文章头图 (subsection-thumbnail)
12. 文章功能 (section-post-features)
├── AI 文章摘要 (subsection-ai-summary)
├── 脚注引用 (subsection-footnote)
├── 分享 (subsection-share)
├── 文章目录 (subsection-toc)
├── 赞赏 (subsection-donate)
├── 文末内容 (subsection-post-footer)
├── 相似推荐 (subsection-related-posts)
├── 标题样式 (subsection-title-style) [从文章显示移入]
└── 过时提示 (subsection-post-other) [从文章显示移入]
13. 特殊页面 (section-special-pages)
├── 搜索设置 (subsection-search)
├── 归档页面 (subsection-archive)
└── 友情链接 (subsection-friend-links)
14. 功能增强 (section-enhancements)
├── 代码高亮 (subsection-code-highlight)
├── 数学公式 (subsection-math)
├── Lazyload (subsection-lazyload)
├── 图片放大 (subsection-lightbox)
└── Pangu.js (subsection-pangu)
15. 高级设置 (section-advanced)
├── 自定义脚本 (subsection-scripts)
└── 杂项 (subsection-misc)
16. 评论设置 (section-comment)
├── 评论分页 (subsection-comment-pagination)
├── 发送评论 (subsection-comment-submit)
├── 评论功能 (subsection-comment-features) [从验证码与安全移入]
├── AI 垃圾评论识别 (subsection-comment-spam-detection) [从验证码与安全移入]
└── 评论区外观 (subsection-comment-appearance) [从验证码与安全移入]
17. 验证码设置 (section-captcha) [重命名]
├── 验证码配置 (subsection-captcha)
└── 场景验证码 (subsection-captcha-scenes)
18. 反馈与安全 (section-feedback-security) [新建]
├── 反馈设置 (subsection-feedback) [从验证码与安全移入]
└── 速率限制 (subsection-rate-limit) [从验证码与安全移入]
```
## 主要改进
### 1. 拆分混杂的分类
- **浮动按钮与页脚** → 拆分为"浮动按钮"和"页脚设置"两个独立分类
- **验证码与安全** → 拆分为"验证码设置"和"反馈与安全"两个分类
### 2. 移动错位的设置项
- 评论功能、AI垃圾评论识别、评论区外观 → 从"验证码与安全"移到"评论设置"
- 标题样式、过时提示 → 从"文章显示"移到"文章功能"
- 页脚设置 → 从"特殊页面"移到独立的"页脚设置"分类
### 3. 删除重复内容
- 删除重复的子目录设置32行
- 删除特殊页面中错误的页脚设置15行
- 删除重复的CDN和日期格式设置88行
- 总计删除135行重复内容
### 4. 优化命名
- "验证码设置"子分类 → "验证码配置"(更明确)
- "CDN" → "CDN 加速"
- 7个子分类命名优化场景验证码、顶栏标题等
## Git 提交历史
1. **c68d47b** - fix: 删除SEO与性能分类中重复的CDN和日期格式设置
2. **3104cad** - fix: 删除重复的子目录和页脚设置
3. **0fb1d11** - feat: 拆分浮动按钮与页脚为独立分类
4. **b471bbc** - feat: 完成设置页完整重组
## 统计数据
- **原始文件**: 6670 行
- **最终文件**: 6655 行
- **删除重复内容**: 135 行
- **新增内容**: 120 行(新分类标题和页脚设置)
- **净减少**: 15 行
- **优化的子分类**: 8 个
- **新建的一级分类**: 3 个(浮动按钮、页脚设置、反馈与安全)
- **重命名的一级分类**: 1 个(验证码与安全 → 验证码设置)
- **重组的子分类**: 7 个
## 优化效果
### 逻辑更清晰
- 每个分类职责单一,不再混杂不相关的设置
- 相关设置集中在一起,便于查找和管理
### 结构更合理
- 18个一级分类每个分类包含2-5个子分类
- 分类层级清晰,符合用户使用习惯
### 无重复项
- 删除所有重复的设置项和分类标题
- 每个设置项只出现一次,避免混淆
### 保持兼容
- 所有设置项的 `name` 属性保持不变
- 所有 ID (`section-*``subsection-*`) 保持不变
- 不影响现有配置和功能
## 文件信息
- **最终文件**: `settings.php` (6655 行)
- **备份文件**: `settings.php.backup`
- **重组脚本**: `reorganize_comment_settings.py`
- **完成时间**: 2026-01-22
- **最后提交**: b471bbc

View File

@@ -1,168 +0,0 @@
# Settings.php 完整重新分类方案
## 当前问题分析
### 1. 分类不合理
- **验证码与安全**:包含了评论功能、评论外观等不相关设置
- **特殊页面**:页脚设置被错误放置在这里(出现两次)
- **浮动按钮与页脚**:页脚设置应该独立
- **文章显示 vs 文章功能**:标题样式、过时提示放在了文章显示中,应该在文章功能
### 2. 重复的子分类
- `subsection-subdirectory` 出现两次第294行和第310行
- `subsection-footer` 出现两次第2539行和第2555行
- `subsection-comment-features` 在验证码与安全分类中第3766行应该在评论设置中
### 3. 设置项错位
- 评论功能设置Markdown、编辑等在"验证码与安全"中
- 评论外观设置在"验证码与安全"中
- AI 垃圾评论识别在"验证码与安全"中,应该在"评论设置"中
- 页脚设置在"特殊页面"中
## 新的分类结构方案
```
1. 基础设置 (section-basic)
├── 主题色 (subsection-theme-color)
├── 夜间模式 (subsection-dark-mode)
└── 子目录 (subsection-subdirectory)
2. 外观样式 (section-appearance)
├── 卡片样式 (subsection-card-style)
├── 字体 (subsection-font)
└── 动画效果 (subsection-animation)
3. 页面布局 (section-layout)
└── 整体布局 (subsection-page-layout)
4. 顶栏设置 (section-toolbar)
├── 基本设置 (subsection-toolbar-basic)
├── 顶栏标题 (subsection-toolbar-title)
├── 顶栏图标 (subsection-toolbar-icon)
├── 顶栏外观 (subsection-toolbar-appearance)
└── 自定义链接 (subsection-toolbar-links)
5. Banner 设置 (section-banner)
├── Banner 内容 (subsection-banner-content)
├── Banner 外观 (subsection-banner-appearance)
└── Banner 动画 (subsection-banner-animation)
6. 页面背景 (section-background)
├── 背景图片 (subsection-background-image)
└── 透明度与毛玻璃 (subsection-transparency)
7. 侧边栏 (section-sidebar)
├── 作者信息 (subsection-author-info)
├── 扩展功能 (subsection-sidebar-features)
└── 博客公告 (subsection-announcement)
8. 浮动按钮 (section-fab) [新建]
└── 浮动操作按钮 (subsection-fab)
9. 页脚设置 (section-footer) [新建]
└── 页脚 (subsection-footer)
10. SEO 与性能 (section-seo-performance)
├── SEO (subsection-seo)
├── CDN 加速 (subsection-cdn)
└── 日期格式 (subsection-date-format)
11. 文章显示 (section-post-display)
├── Meta 信息 (subsection-post-meta)
└── 文章头图 (subsection-thumbnail)
12. 文章功能 (section-post-features)
├── AI 文章摘要 (subsection-ai-summary)
├── 脚注引用 (subsection-footnote)
├── 分享 (subsection-share)
├── 文章目录 (subsection-toc)
├── 赞赏 (subsection-donate)
├── 文末内容 (subsection-post-footer)
├── 相似推荐 (subsection-related-posts)
├── 标题样式 (subsection-title-style) [从文章显示移入]
└── 过时提示 (subsection-post-other) [从文章显示移入]
13. 特殊页面 (section-special-pages)
├── 搜索设置 (subsection-search) [新增]
├── 归档页面 (subsection-archive)
└── 友情链接 (subsection-friend-links)
14. 功能增强 (section-enhancements)
├── 代码高亮 (subsection-code-highlight)
├── 数学公式 (subsection-math)
├── Lazyload (subsection-lazyload)
├── 图片放大 (subsection-lightbox)
└── Pangu.js (subsection-pangu)
15. 评论设置 (section-comment)
├── 评论分页 (subsection-comment-pagination)
├── 发送评论 (subsection-comment-submit)
├── 评论功能 (subsection-comment-features) [从验证码与安全移入]
├── AI 垃圾评论识别 (subsection-comment-spam-detection) [从验证码与安全移入]
└── 评论区外观 (subsection-comment-appearance) [从验证码与安全移入]
16. 验证码设置 (section-captcha) [重命名]
├── 验证码配置 (subsection-captcha)
└── 场景验证码 (subsection-captcha-scenes)
17. 反馈与安全 (section-feedback-security) [新建]
├── 反馈设置 (subsection-feedback) [从验证码与安全移入]
└── 速率限制 (subsection-rate-limit) [从验证码与安全移入]
18. 高级设置 (section-advanced)
├── 自定义脚本 (subsection-scripts)
└── 杂项 (subsection-misc)
```
## 主要调整说明
### 1. 拆分"浮动按钮与页脚"
- 浮动按钮 → 独立为"浮动按钮"分类
- 页脚 → 独立为"页脚设置"分类
### 2. 拆分"验证码与安全"
- 验证码相关 → "验证码设置"分类
- 反馈和速率限制 → "反馈与安全"分类
- 评论功能/外观/AI识别 → 移到"评论设置"分类
### 3. 优化"文章显示"和"文章功能"
- 文章显示:只保留 Meta 信息和头图(纯展示相关)
- 文章功能:包含所有功能性设置(标题样式、过时提示等)
### 4. 完善"特殊页面"
- 添加搜索设置子分类
- 移除错误的页脚设置
### 5. 删除重复项
- 删除重复的子目录设置
- 删除重复的页脚设置
- 删除重复的评论功能设置
## 实施步骤
### 步骤 1删除重复的子分类
1. 删除第310-324行的重复子目录设置
2. 删除第2555-2569行的重复页脚设置
### 步骤 2创建新的一级分类
1. 拆分"浮动按钮与页脚"为两个独立分类
2. 创建"反馈与安全"分类
### 步骤 3移动设置项
1. 将评论功能、AI垃圾评论识别、评论外观从"验证码与安全"移到"评论设置"
2. 将标题样式、过时提示从"文章显示"移到"文章功能"
3. 将反馈设置、速率限制从"验证码与安全"移到"反馈与安全"
### 步骤 4重命名分类
1. "验证码与安全" → "验证码设置"
### 步骤 5调整编号
1. 重新编号所有一级分类1-18
## 优化效果
- **逻辑更清晰**:每个分类职责单一,不再混杂
- **易于查找**:相关设置集中在一起
- **结构合理**18个一级分类每个分类3-5个子分类
- **无重复项**:删除所有重复的设置项
- **保持兼容**:所有 ID 和 name 属性保持不变

View File

@@ -1,71 +0,0 @@
# Settings.php 重组实施计划
## 当前问题
1. **重复的分类标题**
- 第611行`<!-- ========== 4. 顶栏设置 ==========` (错误位置,实际是 CDN/子目录/日期格式)
- 第718行`<!-- ========== 4. 顶栏设置 ==========` (正确位置)
- 第1574行`<!-- ========== 9. 高级设置 ==========` (第一次出现,包含 SEO)
- 第3018行`<!-- ========== 14. 高级设置 ==========` (第二次出现,包含自定义脚本)
2. **结构混乱**
- CDN、子目录、日期格式被错误地放在"顶栏设置"标题下
- 动画效果在"功能增强"中,应该在"外观样式"中
## 修改步骤
### 步骤 1删除第611-717行的错误内容
这部分包含:
- 错误的"顶栏设置"标题
- CDN 设置
- 子目录设置
- 日期格式设置
这些内容需要移动到正确的位置。
### 步骤 2重新组织分类顺序
**新的分类顺序**
1. 基础设置 (93行) - 保持不变,添加子目录
2. 外观样式 (294行) - 添加动画效果
3. 页面布局 (383行) - 保持不变
4. 顶栏设置 (718行) - 保持不变
5. Banner 设置 (959行) - 保持不变
6. 页面背景 (1176行) - 保持不变
7. 侧边栏 (1350行) - 保持不变
8. 浮动按钮与页脚 (1501行) - 保持不变
9. **SEO 与性能** (新建) - 包含 SEO、CDN、日期格式
10. 文章显示 (1607行) - 保持不变
11. 文章功能 (1884行) - 保持不变
12. 特殊页面 (2411行) - 调整子分类顺序
13. 功能增强 (2484行) - 移除动画效果
14. 高级设置 (3018行) - 只保留自定义脚本和杂项
15. 评论设置 (3169行) - 添加 AI 垃圾评论识别子分类
16. 验证码与安全 (3296行) - 添加反馈设置子分类
### 步骤 3子分类名称优化
需要修改的子分类名称:
- `各场景验证码``场景验证码`
- `标题``顶栏标题` (在顶栏设置中)
- `文章内标题样式``标题样式`
- `左侧栏文章目录``文章目录`
- `文末附加内容``文末内容`
- `文章头图 (特色图片)``文章头图`
- `其他``过时提示` (在文章显示中)
- `CDN``CDN 加速`
## 实施方式
由于文件结构复杂且存在重复,建议采用以下方式:
1. **手动编辑关键部分**:删除重复的分类标题
2. **批量替换简单内容**:子分类名称优化
3. **验证修改结果**:确保所有设置项都在正确的分类下
## 注意事项
1. 保持所有设置项的 `name` 属性不变
2. 保持所有 ID 不变(`section-*``subsection-*`
3. 不修改任何设置项的逻辑代码
4. 只调整分类标题和层级结构