【发布时间】:2021-11-18 02:55:45
【问题描述】:
Hugo 的单文件->单页模型非常简单,尤其是对于博客而言。但有时您想为博客写一篇“文章”,然后将其分成 2 篇或更多篇以用于不同的页面(可能在不同的日子发布,或其他)。
有没有办法在 Hugo 中做到这一点?也许是您在页面内的布局/主题/简码和内部标记中放置的东西的组合(以指示在哪里拆分文章)?
可能的模型可能包括:
- 当站点构建为
public时,1 个输入帖子“拆分”为 2/3/4 个帖子 - 当网站构建为
public时,1 个输入帖子被复制为 2/3/4 个帖子,但不知何故,每个重复不是 精确 重复,而是包含整个帖子但某些部分帖子的部分通过 CSS 隐藏/不可见,因此它们代表帖子的 2/3/4“页面”。
或者,这是你在 Hugo 之外做的事情吗?
更新:我知道我需要澄清这一点。考虑一下random illustrative blog post - 这是三个密切相关的帖子中的第三个,甚至在顶部有一组链接,因此您可以找到该系列中较早的帖子。很多技术博客都在做这种事情(至少是我读过的)。
现在,我不是在寻找 CMS 或任何复杂的东西。我现在用 Hugo 做的是hugo new posts/an-article-about-constexpr.md,我写了一个降价文件,它变成了一个标准 Hugo 时尚的“帖子”。正是您希望 SSG 做的事情。
我想要做的是编写一个降价文件,但其中有某种标记将其分成几个部分(如类固醇上的<!-- More -->),而不是生成我网站的一页它生成三个(在本例中) - 三篇单独的文章,其中包含来自“帖子”部分中主页的链接等。对于奖励积分,我想生成这些带有链接的“目录”部分每一页。
所以我一直在使用拼凑而成的 awk 脚本来执行此操作,该脚本在帖子目录中的帖子旁边生成页面。我将帖子设置为草稿,因此它不会被发布,但 awk 脚本生成的页面有 draft=false 所以它们确实会被发布。并且日期已设置好,因此它们是“有序的”。
这很有效,但在我投入更多时间在我的小脚本上之前,我想看看是否有 适当的方法可以在 inhugo 中执行此操作。 p>
【问题讨论】:
-
根据您要执行的操作,您可能需要考虑将帖子存储为结构化数据并使用Data Templates。
-
对我来说,这似乎是三个独立的帖子,也许还有另一个帖子作为摘要,其中包含指向其他帖子的链接。在这种情况下,目录可以被视为子菜单。在 Hugo 中,使用页面包是处理它的一种方法。但我认为,正如您所意识到的,CMS 将为您提供执行您所描述的工作的工具——跨项目/实体维护数据。我不希望 Hugo 以同样的方式在本地工作。
标签: hugo