目录结构
3 分钟阅读
Directory Structure - 目录结构
https://gohugo.io/getting-started/directory-structure/
Hugo的CLI脚手架会创建一个项目目录结构,然后使用该单个目录作为输入来创建一个完整的站点。
新建站点脚手架
从命令行运行hugo new site example会创建一个带有以下元素的目录结构:
| |
目录结构说明
以下是每个目录的高级概述,并提供了链接到Hugo文档中各自部分的链接。
您可以使用
hugo new命令在Hugo中创建新的内容文件。默认情况下,Hugo将创建带有date、title(从文件名推断)和draft = true的新内容文件。这节省了时间,并为使用多个内容类型的站点促进了一致性。您还可以创建自己的原型(archetypes),其中包含自定义的预配置前置元数据字段。存储需要由Hugo Pipes处理的所有文件。只有使用
.Permalink或.RelPermalink的文件将被发布到public目录。Hugo带有大量的配置指令。config目录是存储这些指令的地方,以JSON、YAML或TOML文件的形式存储。每个根设置对象都可以作为自己的文件,并按环境结构化。设置最少且不需要环境感知的项目可以在其根目录使用单个
config.toml文件。许多站点可能不需要任何配置,但Hugo提供了大量的配置指令,用于更精细的指导如何构建您的站点。注意:config目录不会默认创建。
您站点的所有内容都将位于此目录中。Hugo中的每个顶层文件夹都被视为内容章节。例如,如果您的站点有三个主要章节——博客(blog)、文章(articles)和教程(tutorials)——则在
content/blog、content/articles和content/tutorials中将会有三个目录。Hugo使用章节来分配默认内容类型。此目录用于存储在生成站点时Hugo可以使用的配置文件。您可以按YAML、JSON或TOML格式编写这些文件。除了将这些文件添加到此文件夹中外,您还可以创建从动态内容中提取的数据模板。
存储模板,以
.html文件的形式指定如何将您的内容视图渲染为静态站点。模板包括列表页面、主页、分类法模板、局部、单页模板等。存储所有的静态内容:图片、CSS、JavaScript等。当Hugo构建您的站点时,static目录内的所有资源都将按原样复制。一个使用
static目录的好例子是在Google Search Console上验证站点所有权,您希望Hugo复制完整的HTML文件而不修改其内容。
从 Hugo 0.31 版本开始,您可以有多个静态目录。
缓存一些文件以加速生成。也可以由模板作者用于分发已构建的 Sass 文件,这样您就不必安装预处理器。注意:默认情况下不会创建
resources目录。