Hugo 时间配置
目录
hugo 默认日期配置
[frontmatter]
# hugo 会从数组中依次寻找,第一个被找到的时间作为当前属性的时间
date = ["date", "publishDate", "lastmod"]
lastmod = [":git", "lastmod", "date", "publishDate"]
publishDate = ["publishDate", "date"]
expiryDate = ["expiryDate"]还要注意,Hugo 对上述内容有一些内置别名: lastmod => modified 、 publishDate => pubdate 、 published 和 expiryDate => unpublishdate 。以此为例,默认情况下,当你在 front matter 中使用 pubDate 作为前置日期,那么这个值将分配给 .PublishDate .
每项日期的说明
date 和 lastmod 为显示在文章顶部的创建时间和文章底部的最后修改时间
pubDate 和 unpubDate 为公布时间和到期时间,pubDate 之前或 unpubDate 之后的文章不会显示在博客中。
下面是一篇文章中的 front matter :
---
titel: "配置 front matter 中的时间"
pubDate: 2020-03-01
date: 2020-03-01
lastmod: 2020-03-01
unpubDate: 2020-03-05
---获取 git 提交时间
enableGitInfo 默认为 false,如果需要从 git commit 中获取修改时间则需要把这一项改为 true
# 为每个页面启用 .GitInfo 对象(如果 Hugo 站点由 Git 进行版本控制)。然后,这将使用该内容文件的最后一个 git 提交日期更新每个页面的 Lastmod 参数。
enableGitInfo = truefrontmatter 里面的 lastmod 字段表示『更新时间』的获取方式
一些其他的时间获取方式说明
:git从文件的 git 提交记录获取lastmod从文件中的lastmod字段获取:fileModTime从文件修改时间获取,下面是一个例子:
[frontmatter]
lastmod = ['lastmod', ':fileModTime', ':default']上面将首先尝试从 lastmod 前言参数开始提取 .Lastmod 的值,然后提取内容文件的修改时间戳。最后一个, :default 在这里应该不需要,但 hugo 最终会在 :git , date 和 publishDate 中寻找有效日期。
:filename从内容文件的文件名中获取日期。例如,2018-02-22-mypage.md将提取日期2018-02-22。此外,如果未设置slug,mypage将用作.Slug的值。