Hugo框架中文文档 Hugo Archetypes 原型模板
Contents
原型是什么?
原型 是项目的原型目录内的内容模板文件, 这些模板包含预定义的前言设定, 同时也可能是您站点内容类型的内容配置目录。在使用 hugo new
命令创建新内容时会使用原型.
hugo new
命令使用content-section
来寻找项目中最合适的原型模板。如果项目中不包含任何原型文件,命令也会查找theme主题目录中原型文件。
|
|
上面命令创建了一个新的内容文件在content/posts/my-first-post.md
,创建中使用了下面原型模板中的第一个:
archetypes/posts.md
archetypes/default.md
themes/my-theme/archetypes/posts.md
themes/my-theme/archetypes/default.md
列表中最后两个文件仅仅在您使用了主题并且创建新内容的hugo new
命令使用的路径包含my-theme
这个主题名称。
创建新原型模板
下面是一个虚构的为区块 newsletter
的原型例子, 原型文件是archetypes/newsletter.md
.
创建一个新文件archetypes/newsletter.md
然后用编辑器打开它.
|
|
hugo会创建一个新的newsletter类型的内容文件,文件内容基于原型模板.
注意: 这个站点仅在原型文件中使用了.Site
变量的情况下才会被构建。这在大网站时会很消耗时间.
上面的 newsletter 类型原型 显示了可能性。全站点变量 .Site
和所有Hugo的模板函数可以在原型文件中使用
基于目录的原型
Since Hugo 0.49
you can use complete directories as archetype templates. Given this archetype directory:
从Hugo版本0.49
开始,可以使用完整的目录作为原型模板。如下面这个原型目录:
|
|
|
|
基于上面模板目录,这个命令 会在/content/posts/my-post
目录创建同post-bundle
原型目录相同结构的文件集合。所有的内容文件(如index.md
)可以包含模板逻辑, 会接收到对于内容语言正确的 .Site
变量.
TODO