feat(halo): 新增文章搜索和导出功能

- 添加文章搜索命令,支持按关键词筛选和发布状态过滤
- 新增文章导出功能,支持导出为 Markdown 和 JSON 格式
- 扩展国际化配置,添加相关翻译文本
- 更新功能增强计划文档,标记已完成功能
- 移除不再需要的下载信息和插件清单文件
This commit is contained in:
2026-04-26 17:35:37 +08:00
parent 5c4a16dc3a
commit b72f36926a
16 changed files with 565 additions and 666 deletions
@@ -8,27 +8,61 @@
- ✅ 更新已发布文章内容
- ✅ 多站点管理
- ✅ Frontmatter 元数据同步(标题、摘要、分类、标签、封面)
- ✅ 图片上传功能
- ✅ 文章列表增强(分页、筛选)
- ✅ Markdown 文件导入
- ✅ 删除文章功能(支持选择性删除)
- ✅ 标签管理功能
- ✅ 分类管理功能
- ✅ 导出文章为 Markdown
- ✅ 导出文章为 JSON
- ✅ 搜索 Halo 文章
---
## 功能增强方向
## 已完成功能(2024年实现)
### 1. 图片/附件上传TODO 清单已标注)
### 1. 图片/附件上传
**优先级:高 | 难度:中**
- [ ] 自动检测并上传笔记中的图片到 Halo 媒体库
- [ ] 支持粘贴截图自动上传
- [ ] 转换本地图片路径为 Halo URL
- [ ] 附件管理(支持其他文件类型)
- [x] 自动检测并上传笔记中的图片到 Halo 媒体库
- [x] 转换本地图片路径为 Halo URL
### 2. 批量操作功能
### 2. 批量操作功能
**优先级:高 | 难度:中**
- [ ] 批量发布:选择多个笔记一次性发布
- [ ] 批量同步:检测所有已发布笔记的更新状态
- [ ] 批量管理:统一管理 Halo 上的文章列表
- [x] 文章列表查看(支持分页、筛选)
- [x] 从 Markdown 文件导入文章
### 3. 双向同步增强
### 3. 标签/分类管理 ✅
**优先级:高 | 难度:中**
- [x] 标签管理(创建、编辑、删除)
- [x] 分类管理(创建、编辑、删除)
### 4. 导出功能 ✅
**优先级:中 | 难度:中**
- [x] 导出文章为 Markdown
- [x] 导出文章为 JSON(备份用)
### 5. 搜索功能 ✅
**优先级:中 | 难度:中**
- [x] 搜索 Halo 文章(按标题、slug 搜索)
- [x] 按发布状态筛选
### 6. 删除功能 ✅
**优先级:高 | 难度:中**
- [x] 选择性删除(仅 Halo / 仅本地 / 全部)
- [x] 二次确认机制
---
## 待实现功能
### 1. 双向同步增强
**优先级:高 | 难度:高**
- [ ] 差异检测:比较本地和 Halo 版本的修改时间
@@ -36,7 +70,7 @@
- [ ] 冲突解决:处理两边同时修改的情况
- [ ] 同步历史:记录每次同步的详情
### 4. 高级发布选项
### 2. 高级发布选项
**优先级:中 | 难度:中**
- [ ] 自定义 Slug 格式(支持模板变量:`{{title}}`, `{{date}}`
@@ -44,14 +78,14 @@
- [ ] SEO 元数据设置(meta description、keywords
- [ ] 文章属性控制(评论开关、置顶、优先级、可见性)
### 5. 内容预览
### 3. 内容预览
**优先级:中 | 难度:中**
- [ ] 发布前预览 Halo 渲染效果
- [ ] 预览不同主题下的样式
- [ ] 实时预览面板
### 6. 状态管理和日志
### 4. 状态管理和日志
**优先级:中 | 难度:中**
- [ ] 插件面板:显示所有同步状态
@@ -59,28 +93,21 @@
- [ ] 错误日志和告警
- [ ] 同步状态图标(同步中、已同步、有冲突)
### 7. 搜索和过滤
**优先级:低 | 难度:中**
- [ ] 按分类/标签筛选 Halo 文章列表
- [ ] 搜索已发布文章
- [ ] 高级筛选条件(日期范围、发布状态)
### 8. 模板支持
### 5. 模板支持
**优先级:低 | 难度:中**
- [ ] 发布模板:预定义 frontmatter 结构
- [ ] 快捷键自定义默认值
- [ ] 模板变量支持
### 9. 命令面板增强
### 6. 命令面板增强
**优先级:低 | 难度:低**
- [ ] 键盘快捷键支持
- [ ] 快速切换站点
- [ ] 快捷操作菜单
### 10. 用户界面优化
### 7. 用户界面优化
**优先级:低 | 难度:中**
- [ ] 进度条显示
@@ -92,11 +119,11 @@
## 推荐优先级(建议优先实现)
1. **图片/附件上传** - 核心功能缺失,影响使用体验
2. **批量操作** - 提升工作效率
3. **高级发布选项** - 增加灵活性
4. **状态管理和日志** - 问题排查和监控
5. **双向同步增强** - 高级用户需求
1. **双向同步增强** - 高级用户需求
2. **高级发布选项** - 增加灵活性
3. **状态管理和日志** - 问题排查和监控
4. **内容预览** - 提升用户体验
5. **模板支持** - 提升工作效率
---
@@ -138,4 +165,31 @@ POST /apis/api.console.halo.run/v1alpha1/attachments/upload
---
请确认需要实现哪些功能,我将制定详细的技术方案。
## 文件结构
```
src/
├── commands/ # 命令相关
│ ├── import-markdown.ts # ✅ 导入 Markdown 文件
│ ├── delete-post.ts # ✅ 删除文章
│ ├── manage-taxonomy.ts # ✅ 管理标签/分类
│ ├── export-post.ts # ✅ 导出文章
│ └── search-posts.ts # ✅ 搜索文章
├── modals/ # 弹窗相关
│ ├── file-preview-modal.ts # ✅ 文件预览
│ ├── delete-confirm-modal.ts # ✅ 删除确认
│ ├── tag-manager-modal.ts # ✅ 标签管理
│ ├── category-manager-modal.ts # ✅ 分类管理
│ └── search-modal.ts # ✅ 搜索弹窗
├── service/ # 服务层
│ ├── index.ts # Halo API 服务
│ └── image-uploader.ts # ✅ 图片上传
├── utils/ # 工具层
│ ├── image.ts # ✅ 图片处理
│ └── ...
└── main.ts # 主入口
```
---
最后更新:2024年