阻止并在雨果主题中定义覆盖

blocks and define override in hugo theme

我在使用 Hugo v0.16 和创建主题时遇到问题。

基本上我定义了一个带有 {{ block }} 条目的 list.html 文件,以便稍后在我的分类法中覆盖它

阅读文档后 here 似乎一个好的入口点应该在 /themes/THEME/layouts/_default/taxonomy.html 文件。但是当我渲染我的 index.html 时,它使用分类文件中的定义。我认为这是一个错误,但我只是想确定一下。

以下是我的文件的基本内容:

_default/list.html

<h1>Foo {{ block "bar"}}{{ end }}</h1>

_default/taxonomy.html

 {{ define "bar" }}Bar{{ end }}

我期待的是:

index.html

<h1>Foo </h1>

/taxonomy_plural/taxonomy_term/

<h1>Foo Bar</h1>

但是 index.html 看起来像 /taxonomy_plural/taxonomy_term/ 这不是我想要的

我会回答我自己的问题,因为有人给了我一个解决方案

如此处https://discuss.gohugo.io/t/blocks-and-define-override-in-hugo-theme/3543所述,如果我使用 baseof*.html.

,我想做的事情是可能的

所以这是最终的结构:

_default/baseof.html

 <h1>Foo {{ block "bar"}}{{ end }}</h1>

index.html 为空,_default/taxonomy.html 包含

{{ define "bar" }}Bar{{ end }}

它提供了我需要的东西