命令
详细内容请查看官方文档手册:
Commands | Hugo官方文档 (opendocs.io)
命令 | 简解 |
---|---|
⭐hugo | hugo 用于构建您的网站 |
⭐hugo convert | 将您的内容转换为不同的格式 |
hugo convert toJSON | 将前置内容转换为JSON格式 |
⭐hugo deploy | 将您的网站部署到云服务提供商 |
⭐hugo env | 打印Hugo版本和环境信息 |
hugo gen | 一系列有用的生成器集合 |
hugo gen chromastyles | 生成用于 Chroma 代码高亮的 CSS 样式表 |
hugo gen doc | 生成Hugo CLI的Markdown文档 |
hugo gen man | 生成Hugo CLI的man页 |
⭐hugo import | 从其他网站生成器导入你的网站 |
⭐hugo import jekyll | 从Jekyll导入到Hugo |
⭐hugo list | 列出各种类型的内容 |
⭐hugo list all | 列出所有文章 |
⭐hugo list drafts | 列出所有草稿 |
hugo list expired | 列出已过期的所有文章 |
hugo list future | 列出所有未来日期的文章 |
hugo mod | Hugo模块的各种辅助工具 |
⭐hugo mod clean | 删除当前项目的Hugo模块缓存 |
⭐hugo mod get | 解决当前 Hugo 项目的依赖关系 |
⭐hugo mod init | 将此项目初始化为Hugo模块 |
hugo mod npm | 各种npm助手 |
hugo mod npm pack | 实验性功能:为您的项目准备并编写一个复合的 package.json 文件 |
hugo mod tidy | 删除 go.mod 和 go.sum 中未使用的条目 |
hugo mod vendor | 将所有模块依赖项打包到 _vendor 目录中 |
hugo mod verify | 验证依赖项 |
⭐hugo new | 创建站点的新内容 |
⭐hugo new content | 为您的网站创建新内容 |
⭐hugo new site | 创建新站点(框架) |
⭐hugo new theme | 创建一个名为[name]的新主题(模板) |
⭐hugo server | 高性能的网页服务器 |
hugo server trust | 将本地 CA 安装到系统的信任存储中 |
hugo convert toTOML | 将前置信息转换为 TOML 格式 |
⭐hugo version | 打印Hugo版本和环境信息 |
hugo completion zsh | 生成用于zsh shell的自动补全脚本 |
hugo completion powershell | 为powershell生成自动补全脚本 |
⭐hugo mod graph | 打印模块依赖图 |
⭐hugo config | 打印站点配置 |
⭐hugo config mounts | 打印已配置的文件挂载 |
hugo completion | 为指定的shell生成自动完成脚本 |
hugo completion fish | 生成fish shell的自动补全脚本 |
hugo convert toyaml | 将前置内容转换为YAML格式 |
⭐hugo completion bash | 生成bash shell的自动完成脚本 |
前置格式
来源:前置格式 | Hugo官方文档 (opendocs.io)
Hugo允许您在内容文件中使用yaml、toml或json来添加前置格式。
前置格式允许您将元数据附加到[内容类型]的实例中-即嵌入在内容文件中,并且是Hugo赋予其强大功能的众多特性之一。
文章的开头里的前置格式编写将影响接下来整篇文章的环境配置
前置格式格式
Hugo支持四种前置格式格式,每种格式都有其自己的标识标记。
-
TOML
标识符为开放和关闭的
+++
。 -
YAML
标识符为开放和关闭的
---
。 -
JSON
由单个由
{
和}
括起来的JSON对象组成,后跟一个新行。 -
ORG
Org模式关键字组,格式为
#+KEY: VALUE
。任何不以#+
开头的行都会结束前置格式部分。 关键字值可以是字符串(#+KEY: VALUE
)或以空格分隔的字符串列表(#+KEY[]: VALUE_1 VALUE_2
)。
示例
|
|
前置格式变量
预定义
Hugo有一些预定义的变量。请参阅页面变量了解如何在模板中调用这些预定义变量的方法。
-
aliases
一个包含一个或多个别名(例如已重命名内容的旧发布路径)的数组,这些别名将在输出目录结构中创建。有关详细信息,请参阅别名。
-
audio
与页面相关的音频文件路径数组;
opengraph
内部模板使用它来填充og:audio
。 -
cascade
一组前置格式键的映射,其值会传递给页面的子页,除非被自身或更近的祖先级别的cascade覆盖。有关详细信息,请参阅前置格式级联 。
-
date
分配给此页面的日期时间。通常从前置格式的
date
字段获取此值,但此行为是可配置的。 -
description
内容的描述。
-
draft
如果为
true
,则只有在向hugo
命令传递了--buildDrafts
标志时,内容才会被呈现。 -
expiryDate
内容不再由Hugo发布的日期时间;过期内容只有在向
hugo
命令传递了--buildExpired
标志时才会呈现。 -
headless
如果为
true
,则将叶子包设置为无头。 -
images
与页面相关的图像文件路径数组;用于内部模板,如
_internal/twitter_cards.html
。 -
isCJKLanguage
如果为
true
,Hugo将明确将内容视为CJK语言;在CJK语言中.Summary
和.WordCount
都能正确工作。 -
keywords
内容的元关键字。
-
layout
当渲染内容时,Hugo应从查找顺序中选择的布局。如果在前置格式中未指定
type
,Hugo将在与内容部分对应的布局目录中查找相同名称的布局。请参阅内容类型。 -
lastmod
内容最后修改的日期时间。
-
linkTitle
用于创建到内容的链接;如果设置了,Hugo默认使用
title
前的linkTitle
。 -
markup
实验性; 指定
"rst"
以获取reStructuredText(需要rst2html
)或"md"
(默认)以获取Markdown。 -
outputs
允许您指定特定于内容的输出格式。请参阅输出格式。
-
publishDate
如果发布日期在未来,只有在向
hugo
命令传递了--buildFuture
标志时才会呈现内容。 -
resources
用于配置页面包资源。请参阅页面资源。
-
series
-
slug
覆盖URL路径的最后一段。不适用于部分页面。有关详细信息,请参阅URL管理。
-
summary
在
.Summary
页面变量中提供文章摘要时使用的文本;有关详细信息,请参阅内容摘要部分。 -
title
内容的标题。
-
type
内容的类型;如果未在前置格式中指定,此值将自动从目录(即[部分])中派生。
-
url
覆盖整个URL路径。适用于常规页面和部分页面。有关详细信息,请参阅URL管理。
-
videos
与页面相关的视频文件路径数组;
opengraph
内部模板使用它来填充og:video
。 -
weight
用于对内容排序。较低的权重会更优先显示。如果设置了权重,则权重应为非零,因为0会被解释为未设置的权重。
-
索引的复数形式的字段名称。请参阅上述前置格式示例中的
tags
和categories
。请注意,用户定义的分类法的复数形式不能与任何预定义的前置格式变量相同。
如果既不存在slug
也不存在url
,且在站点配置文件中未以其他方式配置永久链接,Hugo将使用内容文件的文件名创建输出URL。有关Hugo路径的说明,请参阅内容组织 ,有关自定义Hugo默认行为的方法,请参阅URL管理。
用户定义的
您可以将字段任意添加到前置格式中,以满足您的需求。这些用户定义的键值对被放置在单个.Params
变量中,用于在模板中使用。
include_toc
和 show_comments
可以通过 .Params.include_toc
和 .Params.show_comments
使用。有关在模板中使用Hugo的页面级和站点级变量的更多信息,请参阅[变量]章节。
示例
|
|
前置格式级联
只要在保留的cascade
前置格式键下方定义,任何节点或部分都可以将一组前置格式值传递给其子代。
针对特定页面
cascade
块可以是一个带有可选_target
关键字的片段,允许多个cascade
值针对不同的页面集进行定位。
|
|
可用于 _target
的关键字:
-
path
Glob模式,用于匹配/content下方的内容路径。期望的是类Unix的斜杠。匹配支持双星号,因此可以匹配像
/blog/*/**
这样的模式,以匹配三级及以下的内容。 -
kind
匹配页面的类型的Glob模式,例如
{home,section}
。 -
lang
匹配页面的语言的Glob模式,例如
{en,sv}
。 -
environment
匹配构建环境的Glob模式,例如
{production,development}
。
上述的任何一个都可以省略。
示例
在content/blog/_index.md
中
|
|
有了上面的示例,当调用.Params.banner
时,Blog部分页面及其子页面将返回images/typewriter.jpg
,除非:
- 该子页面设置了自己的
banner
值 - 或更近的祖先节点设置了自己的
cascade.banner
值。