使用 `hugo new` 添加页面包

adding a page bundle with `hugo new`

我可以使用 hugo new posts/new-page 添加新页面。但我想添加一个页面包。 None 以下作品

hugo new posts/2021/10/new-page 创建单个 new-page.md hugo new posts/2021/10/new-page/ 同上 hugo new posts/2021/10/new-page/index.md 作品,亲切。它在正确的路径中创建 index.md 并使用 archetypes/default.md 填充 index.md除了 ,它将标题设置为 index 而不是 new page

所以,我如何添加带有 hugo new

的页面包

您可以使用 Archetypes 实现,引用 docs:

Since Hugo 0.49 you can use complete directories as archetype templates.

  • archetypes/ 文件夹中创建一个名为 post-bundle/
  • 的新文件夹
  • 在里面创建一个新文件index.md

archetypes/post-bundle/index.md:

---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---
  • 然后创建页面包:
    hugo new --kind post-bundle posts/new-page

注意:我不认为你在url中设置日期的方法是正确的,上面的方法会给出post 使用以下固定链接:example.com/posts/new-page 然后您可以 do the following 获得所需的固定链接:

config.toml :

[permalinks]
  posts = '/:year/:month/:title/'

支持 Mossab 的回答...

页面包包含三个类别: 分支, 无头 和叶子。

因此,如果您制作了一个文件 _index.md - 它是一个 Branch 包,现成的。所以中提琴,这就是你用 hugo new 制作它的方式。

如果你想要一个无头包,我相信你首先需要一个叶包,然后添加: headless = 忠于前言。

如果你想要一个引导包,你可以在任何目录级别创建一个 index.md 文件。

所以,我相信我的观点是,你这样做的方式是:

雨果新_index.md
或者
雨果新 index.md

如果你想要它没有头,你可以使用原型和前面的内容(正如 Mossab 描述的那样)。

如果我可能误解了什么,请告诉我。