hugo不会呈现单一页面布局,而是使用_default单一布局

时间:2019-10-04 13:29:29

标签: hugo

我正在尝试为hugo.io创建自己的主题。到目前为止,一切正常。我唯一的问题是,我无法让雨果渲染单节内容的自定义布局。

对于帖子,这很好:

  • index.html被正确调用
  • “布局/帖子”中的single.html正确调用了
  • 对于教程,列表布局可以正常工作
  • 所有文件和列表的永久链接正常工作

问题: *对于教程,单一布局不会调用“ layouts / tutorials / single.html”布局。相反,它使用“ layouts / _default / single.html”

我尝试了以下操作:

  • 为所有教程.md文件添加type =“” tutorial“序言设置
  • 为所有教程.md文件添加layout =“ tutorial”前言设置
  • 在“ layouts / _default”文件夹中添加一个“ tutorial.html”文件(也尝试将其命名为“ tutorials.html”)
  • 在“布局”文件夹中添加一个“ tutorial.html”文件(与上面相同)

不幸的是,这些都不起作用

我的内容设置:

content
|__ posts
   |__ new_post.md
|__ tutorials
   |__ new-tutorial.md

我的布局设置(在我的主题文件夹中):

layouts
|__ _default
   |__ list.html
   |__ single.html
|__ posts
   |__ list.html
   |__ single.html
|__ tutorials
   |__ list.html
   |__ single.html
|__index.html

我的单个教程内容(new-tutorial.md):

+++
title = "My new Tutorial"
date: 2019-10-04T14:10:46+02:00
draft: false
type: tutorial
layout: tutorial
+++

# Custom Content Headline

没有来自雨果的错误消息。 我希望雨果打开页面“ http://localhost:1313/tutorials/new-tutorial/”时,其布局位于文件“ layouts / tutorials / single.html”中

1 个答案:

答案 0 :(得分:0)

在这种情况下,您不应在new-tutorial.md中指定type: tutorialtype:tutorial

雨果将默认使用layouts / tutorials / single.html作为教程部分,请参见https://gohugo.io/templates/lookup-order/#examples-layout-lookup-for-regular-pages

new-tutorial.md的最终结果如下

+++
title = "My new Tutorial"
date: 2019-10-04T14:10:46+02:00
draft: false
+++

# Custom Content Headline