这个博客是怎么搭起来的

说明 Aikkx 产品博客的技术结构、内容组织方式和发布流程,方便团队接手维护。

技术结构

本站使用 Astro 构建为静态站点:

src/content/blog/     文章 Markdown
src/pages/            页面(首页、博客列表、文章页、关于)
src/layouts/          页面布局
src/components/       头部、底部等组件
src/styles/global.css 全站样式

内容是怎么组织的

每篇文章是一个 Markdown 文件,文件名即 URL 里的 slug。frontmatter 里除了标题和描述,还有几个给搜索和结构化输出用的字段:quickAnsweraudiencesearchIntentfaqs

这些字段不是装饰。文章页会把 quickAnswer 渲染成开头的高亮区块,把 faqs 渲染成可展开的常见问题区块,机器读取页面时更容易拿到结构化的问答。

发布流程

  1. 本地写完文章,运行 npm run build 确认构建通过。
  2. 提交并推送到 main 分支。
  3. Cloudflare Pages 自动拉取代码、执行 npm run build、发布 dist 目录。

整个过程不需要手动上传任何文件。

适合谁读

  • 需要接手维护这个博客的运营或开发同学
  • 想知道内容放在哪、怎么发布的同学

常见问题

新增一篇文章需要改代码吗?

不需要。在 src/content/blog/ 下新增一个 Markdown 文件,填好 frontmatter,然后推送到 main 分支即可,Cloudflare 会自动重新构建。

为什么有的文章没有出现在列表里?

文章列表同时受两处控制:frontmatter 里的 publishedByAutomation 为 true,或者文章 id 被列入 src/content/visibleBlogPosts.ts 的白名单。两者都没有命中的文章不会显示。

想了解 Aikkx 的更多实践?

从博客列表继续阅读,或查看关于页面了解我们关注的方向。

浏览全部文章