使用 Astro 和 Netlify CMS 的单页

问题描述 投票:0回答:1

我正在尝试使用 astro 和 netlify cms 创建一个单页面,其中管理员应该能够通过

/admin
添加/删除/修改页面,但我在理解文件夹结构方面遇到了困难.

所以,据我所知,我需要在

config.yml
文件中指定集合结构。像这样的东西。 (见附件)

这将创建一个

content.md
文件。基本上它将包含通过
/admin
创建的所有信息。

问题是我不知道这个

content.md
文件是如何以及在哪里使用的。我应该在
index.astro
文件中手动导入它还是我错了?

netlify netlify-cms astrojs
1个回答
0
投票

如果您在

src/content/content.md
有 Markdown 文件,则需要将其导入并渲染到某处。这取决于您想要在哪个页面上显示此内容,但如果您想在主页上显示内容,这将是
src/pages/index.astro

这是一个例子:

---
// src/pages/index.astro
import { Content, frontmatter } from '../content/content.md';
---

<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>My homepage</title>
  </head>
  <body>
    <h1>{frontmatter.title}</h1>
    <article>
      <Content /> <!-- this will render your Markdown body -->
    </article>
  </body>
</html>

这里需要注意的关键事项是:

  • 使用
    <Content />
    组件渲染 Markdown 文件的主要 Markdown 内容
  • 使用表达式
    {frontmatter.title}
    从 Netlify CMS 配置访问标题字段。其他字段也可以以同样的方式使用:
    {frontmatter.description}
    {frontmatter.heroImage}
    等。
© www.soinside.com 2019 - 2024. All rights reserved.