BLOG

介绍 Astro 博客项目中常见目录和职责分工,帮助你组织内容和组件。

博客站点的目录结构设计

做一个可维护的博客,不只是写文章,还需要把项目组织得清晰。很多站点在刚刚起步时,页面和组件都放在一起,后面再维护时就会越来越乱。更好的方式是提前规划目录结构。

一个典型 Astro 项目

下面是一份比较常见的结构:

src/
  components/
    Header.astro
    Footer.astro
    BaseHead.astro
  content/
    blog/
      first-post.md
      second-post.md
  layouts/
    BaseLayout.astro
    BlogPost.astro
  pages/
    index.astro
    about.astro
    post.astro
    post/[...slug].astro
  styles/
    global.css

各模块职责

components/

用于存放可复用 UI,例如:

content/

用于存放博客内容源文件,比如 Markdown。这样可以让内容和渲染逻辑分离,后期还可以统一加 frontmatter 结构校验。

layouts/

页面骨架的地方,通常放:

pages/

这里是路由入口,Astro 会根据文件路径生成页面:

动态路由常见写法:

post/[...slug].astro

这样就能按文章 slug 生成详情页:

/post/hello-world/
/post/astro-start/

正确的内容组织思路

对于技术博客来说,最重要的是:把内容和展示分开。文章写进 Markdown,页面负责渲染,而不是把每篇文章的 HTML 直接写死在页面里。

这样做的好处:

结语

站点结构不是“炫技”,而是长期维护的基础。把项目拆成清晰的职责层次后,后续新增页面、文章、组件都会更顺畅。对个人站点尤其重要,因为你会不断迭代内容和功能。

如果你已经搭了基础架构,下一步就可以开始进入“内容建设”阶段:写文章、整理导航、补充首页卡片和详情页。



Author: NUPIGM

Date: 2026-09-15