博客草稿功能使用教程

介绍如何使用博客的 draft 草稿功能,隐藏未完成的文章。

博客草稿功能使用教程

什么是草稿功能

草稿功能允许你隐藏尚未完成的文章。设置为草稿的文章:

隐藏位置仍然可以访问
首页文章列表✅ 直接访问文章链接
归档页✅ 搜索引擎(如果你分享链接)
Atom 订阅源
站点统计

简而言之:草稿文章不会出现在任何公开列表和订阅中,但知道链接的人依然可以查看


创建新文章时

使用 pnpm new 创建文章后,打开生成的文件,会看到顶部的 frontmatter 区域:

yaml
---
title: 我的新文章
description: 讲述关于我的新文章的故事
date: 2026-06-09 12:00:00
updated: 2026-06-09 12:00:00
image: # 封面图推荐 2:1,不含与标题重复的文字
type: tech
categories: [技术]
tags: []
draft: true # 撰写完成后,请设置为 false
---

默认就是草稿状态,不会出现在首页列表中。你可以安心地在本地或线上编辑。


发布文章

当你写完文章后,只需把 draft 改为 false

yaml
draft: false

或者直接删除 draft 这一行(默认值就是 false):

diff
---
title: 我的新文章
type: tech
categories: [技术]
- draft: true
---

保存后,重新构建/部署博客,文章就会出现在首页列表中。


隐藏已有文章

如果你想隐藏一篇已发布的文章,在它的 frontmatter 中添加:

yaml
draft: true

示例:隐藏"关于我"页面

本博客的"关于我"页面已设为草稿,你仍然可以通过以下链接直接访问:

text
https://hehaowen.com.cn/关于我

但它不会出现在首页文章列表、归档页和 RSS 订阅中。


注意事项

  1. draft 不是密码保护 —— 知道链接的人仍然可以访问文章,只是不会出现在公开列表中
  2. 需要重新构建 —— 修改 draft 状态后,需要重新构建并部署才能生效
  3. 本地预览 —— 开发模式 (pnpm dev) 下草稿文章同样会被过滤,方便验证效果
  4. 订阅源延迟 —— RSS 阅读器可能有缓存,状态变更后会稍有延迟

技术原理

草稿功能的实现分为两部分:

  1. 数据层 —— 文章的 draft 字段,默认为 falsecontent.config.ts
  2. 查询过滤 —— 以下位置添加了 .where('draft', '=', false) 过滤:
文件影响范围
app/composables/useArticle.ts首页列表、归档页
server/routes/atom.xml.get.tsAtom 订阅源
server/api/stats.get.ts站点统计
2025年河南省中等职业教育技能大赛 网络建设与运维赛项(第7套)模块二
2025年河南省中等职业教育技能大赛网络建设与运维赛项例题(第七套)模块三

评论区

评论加载中...