# AI News Plugin - 卸载清理文档

## 插件卸载时清理的数据项

### WordPress 选项 (wp_options 表)

#### 主要配置选项
- `ainews_api_key` - Gemini API 密钥
- `ainews_post_category` - 默认文章分类
- `ainews_schedule_interval` - 定时生成间隔
- `ainews_article_count` - 每次生成文章数量
- `ainews_language` - 生成语言
- `ainews_selected_topics` - 选择的新闻主题
- `ainews_post_status` - 默认文章状态
- `ainews_prompt_type` - 提示词模板类型
- `ainews_prompt_language` - 提示词语言
- `ainews_custom_interval` - 自定义生成间隔
- `ainews_custom_prompt` - 自定义提示词

#### 自动生成相关选项
- `ainews_auto_enabled` - 自动生成是否启用
- `ainews_auto_generated_count` - 自动生成文章总数
- `ainews_last_auto_run` - 最后一次自动运行时间
- `ainews_schedule_paused` - 定时任务是否暂停
- `ainews_last_auto_interval` - 最后使用的自动间隔

#### 特色图片相关选项
- `ainews_auto_featured_image` - 自动生成特色图片
- `ainews_image_generation_service` - 图片生成服务
- `ainews_image_style` - 图片风格
- `ainews_image_dimensions` - 图片尺寸
- `ainews_custom_width` - 自定义宽度
- `ainews_custom_height` - 自定义高度
- `ainews_openai_api_key` - OpenAI API 密钥
- `ainews_siliconflow_api_key` - SiliconFlow API 密钥
- `ainews_deepseek_api_key` - DeepSeek API 密钥
- `ainews_unsplash_access_key` - Unsplash 访问密钥
- `ainews_pixabay_api_key` - Pixabay API 密钥

### 数据库表
- `{$wpdb->prefix}ainews_history` - 文章生成历史记录表

### WordPress 定时任务
- `ainews_generate_articles` - 自动生成文章的定时任务

### 文章元数据 (wp_postmeta 表)
- `_ainews_generated` - 标记 AI 生成的文章
- `_ainews_language` - 文章生成时使用的语言

### 缓存数据
- `_transient_ainews_*` - 所有以 ainews_ 开头的瞬态缓存
- `_transient_timeout_ainews_*` - 瞬态缓存的超时记录

### 文件系统
- `{uploads_dir}/ainews/prompts.json` - 自定义提示词文件（如果存在）
- `{uploads_dir}/ainews/` - 插件上传目录（如果为空则删除）

## 卸载行为说明

### 自动清理项（uninstall.php）
1. **选项清理**：删除所有插件相关的 WordPress 选项
2. **定时任务清理**：清除所有相关的 cron 定时任务
3. **数据库表清理**：删除插件创建的自定义数据库表
4. **元数据清理**：删除文章的 AI 生成标记
5. **缓存清理**：清除所有相关的瞬态缓存
6. **文件清理**：删除上传目录中的自定义文件

### 可选清理项（默认不执行）
- **AI 生成的文章**：默认保留，可通过取消注释相关代码来删除

### 停用时清理（deactivation hook）
1. **定时任务停止**：清除所有定时生成任务
2. **状态重置**：重置自动生成相关状态

## 数据安全说明

1. **用户生成的文章**：默认情况下不会删除 AI 生成的文章，避免意外数据丢失
2. **API 密钥**：在卸载时会被完全删除，确保安全
3. **历史记录**：完全清除，不保留任何生成历史
4. **自定义配置**：所有用户设置都会被清除

## 手动清理（如需要）

如果需要手动清理残留数据，可以运行以下 SQL：

```sql
-- 删除所有插件选项
DELETE FROM wp_options WHERE option_name LIKE 'ainews_%';

-- 删除历史记录表
DROP TABLE IF EXISTS wp_ainews_history;

-- 删除文章元数据
DELETE FROM wp_postmeta WHERE meta_key IN ('_ainews_generated', '_ainews_language');

-- 清理缓存
DELETE FROM wp_options WHERE option_name LIKE '_transient_ainews_%';
DELETE FROM wp_options WHERE option_name LIKE '_transient_timeout_ainews_%';
```

注意：请将 `wp_` 替换为您实际的 WordPress 表前缀。
