Keystatic & Astro
Keystatic 是一个开源的无头内容管理系统,它允许你构建内容并实现与 GitHub 的同步。
如果你要从头开始创建一个新的 Astro + Keystatic 项目,你可以使用 Keystatic CLI 在几秒钟内生成一个新项目:
选择 Astro 模板后,你就可以开始部署你的 Keystatic + Astro 项目了!
前期准备
段落标题 前期准备- 一个已经 配置了适配器的 (EN) 的现有 Astro 项目。
如果你计划将 Keystatic 的数据与 GitHub 同步,确保你的 GitHub 账号拥有此项目仓库的 write
权限。
安装依赖
段落标题 安装依赖使用你的包管理器的 astro add
命令,将 Markdoc(用于内容条目)和 React(用于 Keystatic 管理 UI 仪表板)的集成添加到你的 Astro 项目中。
你还需要两个 Keystatic 包:
添加 Astro 集成
段落标题 添加 Astro 集成在你的 Astro 配置文件中添加来自 @keystatic/astro
的 Astro 集成:
创建 Keystatic 配置文件
段落标题 创建 Keystatic 配置文件为了定义你的内容模式,你需要创建一个 Keystatic 配置文件。此外,如果你选择这样做,该文件还可以帮助你将项目与特定的 GitHub 仓库链接起来。
在项目的根目录下创建一个名为 keystatic.config.ts
的文件。在该文件中,定义你的存储类型为 local
,并设置一个名为 posts
的内容集合:
如果你的 Astro 项目中已经使用了 内容集合,请确保更新上述 schema,使其与你现有 schema 中定义的集合完全一致。
现在,Keystatic 已经可以根据你的 schema 配置来管理内容了。
在本地运行 Keystatic
段落标题 在本地运行 Keystatic要启动 Keystatic 管理界面,你需要运行 Astro 的开发服务器:
在浏览器中输入 http://127.0.0.1:4321/keystatic
,即可查看正在运行的 Keystatic 管理界面。
创建新文章
段落标题 创建新文章-
打开 Keystatic 管理界面,然后在仪表板中选择 “Posts” 集合。
-
使用按钮创建一个新文章。添加标题 “我的第一篇文章” 和一些内容,然后保存文章。
-
这篇文章现在应该在你的 “Posts” 集合中可见。你可以从这个管理界面查看和编辑你的文章。
-
现在,返回你的 Astro 项目文件并查看
src/content/posts
目录,你会发现这篇新文章已经生成了一个新的.mdoc
文件:文件夹src/
文件夹content/
文件夹posts/
- my-first-post.mdoc
-
打开你的代码编辑器,导航到该文件,确认你可以看到你之前输入的 Markdown 内容。例如:
渲染 Keystatic 内容
段落标题 渲染 Keystatic 内容你可以使用 Astro 的内容集合 API 来查询和显示你的帖子和集合,就如同在其他 Astro 项目中一样。
显示集合列表
段落标题 显示集合列表以下示例将展示一个帖子标题列表,每个标题都会链接到对应的帖子页面。
显示单个条目
段落标题 显示单个条目要展示单个帖子的内容,你可以引入并使用 <Content />
组件,这样可以方便地将内容渲染成 HTML。
要了解更多关于查询、过滤、展示你的内容集合以及更多信息,请查看完整的内容集合文档。
部署 Keystatic + Astro
段落标题 部署 Keystatic + Astro要部署你的网站,请参考我们的部署指南,并按照你选择的托管服务提供商的步骤进行操作。
此外,你可能还会对如何将 Keystatic 与 GitHub 连接感兴趣,这样可以让你在项目部署的过程中更方便地管理内容。