【问题标题】:Slug is null with Netlify CMS使用 Netlify CMS 时,Slug 为空
【发布时间】:2021-11-27 23:08:38
【问题描述】:

我正在尝试设置 Netlify CMS,但在使用它创建新的降价文件时遇到了问题。我试图通读文档以正确配置它,但似乎没有加起来。部分问题似乎来自我使用自己的 slug 字段这一事实,文档说我可以使用 fields.slug 来解决冲突,但是当我尝试使用它时它仍然为 null。

config.yml 的相关部分

collections:
  - name: "staff"
    label: "Staff Members"
    label_singular: "Staff Member"
    summary: "{{firstName}} {{lastName}}"
    folder: "content/staff"
    create: true
    slug: "{{fields.slug}}"
    media_folder: ""
    public_folder: ""
    path: "{{fields.slug}}"
    sortable_fields: ["frontmatter.email"]
    editor:
      preview: true
    fields:
      - { label: "Type", name: "type", widget: "string" }
      - {
          label: "Slug",
          name: "slug",
          widget: "string",
          pattern:
            [
              "^[a-z0-9]+(?:-[a-z0-9]+)*$",
              "A slug can have no spaces or special characters",
            ],
          required: true,
        }
      - { label: "First Name", name: "firstName", widget: "string" }
      - { label: "Last Name", name: "lastName", widget: "string" }
      - { label: "Email", name: "email", widget: "string" }
      - { label: "Body", name: "body", widget: "markdown" }

降价应该是什么样子:

---
type: "staff"
slug: "jdoe"
firstName: "John"
lastName: "Doe"
email: "fake@email.com"
---

I do stuff.

我从 Netlify CMS 获得的信息:

---
type: staff
slug: jdoe
firstName: John
lastName: Doe
email: fake@email.com
---

I do stuff.

文件名最终是.md,只是扩展名,没有文件名。我确实设法让它在实际的 md 中记录 slug,但文件名仍然丢失。

【问题讨论】:

    标签: markdown netlify netlify-cms


    【解决方案1】:

    slug: "{{fields.slug}}" 更改为slug: "{{slug}}"

    这将使用标题字段 slug-ified 作为文件名。您仍然可以在字段列表中包含自定义 slug 字段以用于其他用途。

    【讨论】:

      猜你喜欢
      • 2020-07-18
      • 2019-08-06
      • 2021-07-01
      • 2018-09-26
      • 2019-11-02
      • 2019-07-14
      • 1970-01-01
      • 1970-01-01
      • 2020-03-02
      相关资源
      最近更新 更多