Page.Title 与 Hugo 网站上的 Site.Title 相同

Page.Title same as Site.Title on Hugo Site

我正在用 Hugo 建立一个网站。 config.toml 页面中有:

title = "mySite"

在“关于”页面的降价文件中,有:

title: About

这有效并导致浏览器选项卡显示关于 - mySite。

问题出现在浏览器选项卡显示 mySite - mySite 的主页上。

markdown主页确实定义了标题:

title: long name of post

浏览 Hugo 文件,我看到 head.html 有一行:

<title>{{ if .Page.Title }}{{ .Page.Title }} - {{ end }}{{ .Site.Title }}</title>

看来 .Page.Title = .Site.Title 用于主页。 如何将主页 .Page.Title 设置为“主页”,以便主页的浏览器选项卡显示为“主页 - mySite”?

尝试查看 .IsHome 页面变量 (https://gohugo.io/variables/page/)。

对于您所描述的情况,我认为这可以解决问题:

<title>{{ if .IsHome }}Home - {{ else }}{{ if .Page.Title }}{{ .Page.Title }} - {{ end }}{{ end }}{{ .Site.Title }}</title>

我没有方便的站点来快速测试上面的模板渲染,但请确保大括号和 Home 之间没有 space,即 }}Home,否则space 也会出现在 <title> 中。如果上面有语法错误,请在评论中写下,我会编辑代码。