Hugo

Hugo Shortcodes 语法手册

警告
本文最后更新于 2026-01-16,文中内容可能已过时。

Shortcodes 是 Hugo 的写作机制,通过简洁标签在 Markdown 中插入图片、视频等复杂内容,无需直接编写 HTML,提升效率与灵活性。1

实际使用中,可结合输入法自定义短语,如搜狗输入法(属性设置 > 高级 > 自定义短语),为常用 Shortcodes 设置英文缩写,进一步降低输入成本。

文本

Admonition

admonition 用于展示提示、警告或说明等强调信息,通过不同样式表达不同语义。

Markdown
1
2
3
{{< admonition type="" title="" open="" >}}
文本
{{< /admonition >}}
参数说明
位置参数名可选值默认值说明
1type见下文note提示块类型
2titletype自定义标题
3opentrue / falsetrue是否默认展开
  • type 可选:noteabstractinfotodotipsuccessquestionwarningfailuredangerbugexamplequote。写作中最常用的是 notetipwarning
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
1、最简用法
{{< admonition >}}普通说明{{< /admonition >}}

2、自定义标题与展开状态
{{< admonition type=tip title="[AriaNote](https://arianote.top)" open=false >}}文本{{< /admonition >}}

3、常用类型
{{< admonition type=note >}}普通说明{{< /admonition >}}
{{< admonition type=tip >}}技巧窍门{{< /admonition >}}
{{< admonition type=warning >}}风险提醒{{< /admonition >}}

4、不常用类型
{{< admonition type=abstract >}}摘要总结{{< /admonition >}}
{{< admonition type=info >}}客观信息提示{{< /admonition >}}
{{< admonition type=todo >}}待办事项{{< /admonition >}}
{{< admonition type=success >}}成功提示{{< /admonition >}}
{{< admonition type=question >}}提问思考{{< /admonition >}}
{{< admonition type=failure >}}失败结果{{< /admonition >}}
{{< admonition type=danger >}}严重错误{{< /admonition >}}
{{< admonition type=bug >}}已知问题{{< /admonition >}}
{{< admonition type=example >}}示例说明{{< /admonition >}}
{{< admonition type=quote >}}引用内容{{< /admonition >}}

1、最简用法

注意
普通说明

2、自定义标题与展开状态

文本

3、常用类型

注意
普通说明
技巧
技巧窍门
警告
风险提醒

4、不常用类型

摘要
摘要总结
信息
客观信息提示
待办
待办事项
成功
成功提示
问题
提问思考
失败
失败结果
危险
严重错误
Bug
已知问题
示例
示例说明
引用
引用内容

Book

引入详见《Book 短代码:豆瓣风格书籍展示》。

book 是豆瓣风格的书籍卡片,用于展示封面、信息、评分等。

Markdown
1
2
3
4
5
6
{{< book id="" />}}
{{< book isbn="" />}}
{{< book cover="" title="" author="" publisher="" pubdate="" rating="" isbn="" link="" >}}
内容简介
{{< /book >}}
参数说明
参数名说明
id书籍 ID,用于从本地 JSON 数据中按豆瓣 ID 查询书籍
isbn书籍 ID,用于从本地 JSON 数据中按豆瓣 ID 查询书籍
title书籍标题
author作者
publisher出版社
pubdate出版日期(展示时统一为 YYYY年MM月
rating评分(0–10 分制,展示时会转换为 5 星制)
link书籍详情链接
cover封面图片 URL 或本地路径(默认在 assets/books/
内容简介书籍简介内容,默认从书籍数据中加载,支持手动覆盖
  • idisbn 二选一,从 data/books.json 中自动加载书籍信息。
  • 如果未提供 idisbn 时,则必须手动指定 title
  • 手动传入的参数优先级高于 JSON 数据,会覆盖自动加载的内容。
  • 评分与日期格式在渲染时自动处理,无需手动调整。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
1、最简示例:
{{< book id="4882120" />}}
{{< book isbn="9787544248174" />}}

2、ID + 参数覆盖(部分自定义)
{{< book id="4882120" title="自定义标题" author="自定义作者" />}}

3、ID + 自定义内容简介:
{{< book id="4882120" >}}
这是自定义的内容简介,会覆盖 JSON 中的内容。
支持多行和 Markdown 格式。
{{< /book >}}

4、ID + 参数 + 自定义内容简介:
{{< book id="4882120" title="自定义标题" author="自定义作者" >}}
这是完全自定义的内容简介。
{{< /book >}}

5、完全手动输入(无 ID):
{{< book cover="/books/4882120.jpg" title="金字塔原理"  author="芭芭拉·明托"  publisher="南海出版公司" pubdate="2010年08月"  rating="8.0"  isbn="9787544248174"  link="https://book.douban.com/subject/4882120/" >}}
金字塔的基本结构是:中心思想明确,结论先行,以上统下,归类分组,逻辑递进。先重要后次要,先全局后细节,先结论后原因,先结果后过程。
{{< /book >}}

6、部分手动 + 自定义内容简介:
{{< book title="金字塔原理" author="芭芭拉·明托" rating="8.0" >}}
无 ID 时,没有本地图片路径,就无法显示封面图。
{{< /book >}}

1、最简示例:

BOOK
金字塔原理 封面

金字塔原理

8.0
芭芭拉・明托南海出版公司2010年08月9787544248174
内容简介
本书系统介绍了 “金字塔原理” 这一结构化思维与表达方法,围绕结论先行、逻辑分组和层级递进等核心原则,讲解如何组织观点、梳理思路并清晰呈现信息。通过标准结构和规范表达动作,帮助读者提升分析问题、表达观点和高效沟通的能力。

2、ID + 参数覆盖(部分自定义):

BOOK
自定义标题 封面

自定义标题

8.0
自定义作者南海出版公司2010年08月9787544248174
内容简介
本书系统介绍了 “金字塔原理” 这一结构化思维与表达方法,围绕结论先行、逻辑分组和层级递进等核心原则,讲解如何组织观点、梳理思路并清晰呈现信息。通过标准结构和规范表达动作,帮助读者提升分析问题、表达观点和高效沟通的能力。

3、ID + 自定义内容简介:

BOOK
金字塔原理 封面

金字塔原理

8.0
芭芭拉・明托南海出版公司2010年08月9787544248174
内容简介

这是自定义的内容简介,会覆盖 JSON 中的内容。

支持多行和 Markdown 格式。

4、ID + 参数 + 自定义内容简介:

BOOK
自定义标题 封面

自定义标题

8.0
自定义作者南海出版公司2010年08月9787544248174
内容简介
这是完全自定义的内容简介。

5、完全手动输入(无 ID):

BOOK
金字塔原理 封面

金字塔原理

8.0
芭芭拉·明托南海出版公司2010年08月9787544248174
内容简介
金字塔的基本结构是:中心思想明确,结论先行,以上统下,归类分组,逻辑递进。先重要后次要,先全局后细节,先结论后原因,先结果后过程。

6、部分手动 + 自定义内容简介

BOOK
金字塔原理 封面

金字塔原理

8.0
芭芭拉·明托
内容简介
无 ID 时,没有本地图片路径,就无法显示封面图。

Center-Quote

center-quote 用于居中展示引用或强调语句,适合格言、标语或短文本强调。

Markdown
1
2
3
{{< center-quote >}}
文本
{{< /center-quote >}}
Markdown
1
{{< center-quote >}}文本{{< /center-quote >}}
文本

Details

details 用于折叠显示内容,需用户展开查看,适合补充说明或示例说明。

Markdown
1
2
3
{{< details summary="" open="" class="" >}}
文本
{{< /details >}}
参数说明
位置参数名可选值默认值说明
1summaryDetails折叠标题
2opentrue / falsefalse是否默认展开
3class自定义样式类
namename 属性
titletitle 属性
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
1、最简折叠说明
{{< details >}}文本{{< /details >}}

2、自定义折叠标题
{{< details summary="展开查看" >}}文本{{< /details >}}

3、默认展开内容
{{< details summary="展开查看" open=true >}}文本{{< /details >}}

4、带样式的补充说明
{{< details summary="更多说明" open=false class="note" >}}文本{{< /details >}}

5、带属性的说明区块 - 命名参数
{{< details summary="更多信息" open=false class="note" name="extra" title="点击展开" >}}文本{{< /details >}}

1、最简折叠说明

Details

文本

2、自定义折叠标题

展开查看

文本

3、默认展开内容

展开查看

文本

4、带样式的补充说明

更多说明

文本

5、带属性的说明区块 - 命名参数

更多信息

文本

Tabs

tabstab 用于将内容分组显示在多个选项卡中,适合并列信息或对比展示。

Markdown
1
2
3
4
5
{{< tabs type="" placement="" defaultTab="" >}}
{{% tab title="" %}}
文本
{{% /tab %}}
{{< /tabs >}}
参数说明
参数名可选值默认值说明
typeunderline / pill / card / segmentunderline标签页样式
placementtop / bottom / left / righttop标签页位置
defaultTab0 ~ N-10默认激活索引
  • segment 类型不支持 placement 参数。
  • tabtitle 为标签页显示文本。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
1、下划线样式 - 标签页位于下方
{{< tabs type="underline" placement="bottom" >}}
{{% tab title="1" %}}文本1{{% /tab %}}
{{% tab title="2" %}}文本2{{% /tab %}}
{{% tab title="3" %}}文本3{{% /tab %}}
{{< /tabs >}}

2、胶囊样式 - 标签页位于右方
{{< tabs type="pill" placement="right" >}}
{{% tab title="1" %}}文本1{{% /tab %}}
{{% tab title="2" %}}文本2{{% /tab %}}
{{% tab title="3" %}}文本3{{% /tab %}}
{{< /tabs >}}

3、卡片样式 - 标签页位于左方
{{< tabs type="card" placement="left" >}}
{{% tab title="1" %}}文本1{{% /tab %}}
{{% tab title="2" %}}文本2{{% /tab %}}
{{% tab title="3" %}}文本3{{% /tab %}}
{{< /tabs >}}

4、分段样式 - 标签页默认位于上方 + 默认选中第二个标签页
{{< tabs type="segment" defaultTab=1 >}}
{{% tab title="1" %}}文本1{{% /tab %}}
{{% tab title="2" %}}文本2{{% /tab %}}
{{% tab title="3" %}}文本3{{% /tab %}}
{{< /tabs >}}

1、下划线样式 - 标签页位于下方

文本1
文本2
文本3

2、胶囊样式 - 标签页位于右方

文本1
文本2
文本3

3、卡片样式 - 标签页位于左方

文本1
文本2
文本3

4、分段样式 - 标签页默认位于上方 + 默认打开第二个标签选项卡

文本1
文本2
文本3

Timeline

timeline 用于按时间顺序展示事件列表,适合项目进展、版本记录或流程节点。

Markdown
1
2
3
4
5
6
{{< timeline reverse="" placement="" animation="" size="" node="" >}}
events:

- timestamp: ""
  content: ""
  {{< /timeline >}}
容器参数
位置参数名可选值默认值说明
1reversetrue / falsefalse是否倒序排列
2placementtop / bottombottom时间戳位置
3animationtrue / falsefalse是否启用动画
4sizesmall / medium / largemedium节点尺寸
5nodecircle / dotcircle节点样式
width容器宽度
height容器高度
class容器样式类
data数据源键值
file外部数据文件
时间节点参数
参数可选值默认值说明
timestamp时间戳
content事件内容
hideTimestamptrue / falsefalse是否隐藏时间戳
placementtop / bottombottom节点时间戳位置
color颜色值节点颜色
typeprimary / success / info / warning / danger节点类型
sizesmall / medium / largemedium节点尺寸
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
1、最简单时间线 - 正序
{{< timeline >}}
events:

- timestamp: 2024-07-11
  content: 创建成功
- timestamp: 2024-07-13
  content: 通过审核
- timestamp: 2024-07-15
  content: 活动按期开始
  {{< /timeline >}}

2、倒序时间线
{{< timeline reverse=true >}}
events:

- timestamp: 2024-07-11
  content: 创建成功
- timestamp: 2024-07-13
  content: 通过审核
- timestamp: 2024-07-15
  content: 活动按期开始
  {{< /timeline >}}

3、开启动画效果
{{< timeline animation=true >}}
events:

- timestamp: 2024-07-11
  content: 创建成功
- timestamp: 2024-07-13
  content: 通过审核
- timestamp: 2024-07-15
  content: 活动按期开始
  {{< /timeline >}}

4、自定义节点样式
{{< timeline >}}
events:

- timestamp: 2024-07-19 20:30
  content: 支持自定义风格
  type: primary
  node: dot
- timestamp: 2024-07-19 20:30
  content: 支持自定义颜色
  color: "#0CBD87"
- timestamp: 2024-07-19 20:30
  content: 支持自定义尺寸
  size: large
- timestamp: 2024-07-20 20:30
  content: 默认样式的节点
  {{< /timeline >}}

5、使用 data 参数加载数据
{{< timeline data="example" >}}

6、使用 file 参数加载数据
{{< timeline file="data/example.yml" >}}

1、最简单时间线 - 正序

  • 创建成功
    2024-07-11
  • 通过审核
    2024-07-13
  • 活动按期开始
    2024-07-15

2、倒序时间线

  • 活动按期开始
    2024-07-15
  • 通过审核
    2024-07-13
  • 创建成功
    2024-07-11

3、开启动画效果

  • 创建成功
    2024-07-11
  • 通过审核
    2024-07-13
  • 活动按期开始
    2024-07-15

4、自定义节点样式

  • 支持自定义风格
    2024-07-19 20:30
  • 支持自定义颜色
    2024-07-19 20:30
  • 支持自定义尺寸
    2024-07-19 20:30
  • 默认样式的节点
    2024-07-20 20:30

Typeit

typeit 用于创建打字机效果的动态文字,适合强调性或演示性文本。

Markdown
1
2
3
{{< typeit >}}
文本
{{< /typeit >}}
参数说明
参数名可选值默认值说明
tagspanHTML 标签名
code代码语言
code-linktrue / falsefalse解析代码链接
group动画分组
speed100打字速度
cursorSpeed1000光标闪烁速度
cursorChar|光标字符
duration-1光标持续时间
looptrue / falsefalse动画循环
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
1、最简用法
{{< typeit >}}文本{{< /typeit >}}

2、自定义 HTML 标签
{{< typeit tag=h4 >}}`h4` 标签{{< /typeit >}}

3、代码效果
{{< typeit code=java >}}
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}
{{< /typeit >}}

4、分组效果
{{< typeit group=paragraph >}}**第一组**文本{{< /typeit >}}
{{< typeit group=paragraph >}}**第二组**文本{{< /typeit >}}

5、循环效果
{{< typeit loop=true >}}循环段落……{{< /typeit >}}

1、最简用法

2、自定义 HTML 标签

3、代码效果

4、分组效果

5、循环效果

图片

Figure

figure 用于插入标准图片,支持标题、说明与署名,适合需要语义结构的图片展示。

Markdown
1
{{< figure src="" alt="" >}}
参数说明
参数名可选值说明
src图片资源路径(必需)
alt图片替代文本
width图片宽度
height图片高度
loadinglazy / eager图片加载策略
class<figure> 的 CSS class
link图片链接地址
target图片链接的 target 属性
rel图片链接的 rel 属性
title标题文本(说明区顶部)
caption图片说明文字
attr图片署名信息
attrlink署名链接地址
  • captionattr 支持 Markdown 语法。
  • 设置 link 时,图片将被链接包裹。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
1、最简图片展示
{{< figure src="/favicon-96x96.png" alt="示例" >}}

2、带说明文字
{{< figure src="/favicon-96x96.png" alt="示例" caption="说明" >}}

3、带标题与说明
{{< figure src="/favicon-96x96.png" alt="示例" title="标题" caption="说明" >}}

4、可点击图片
{{< figure src="/favicon-96x96.png" alt="示例" link="https://arianote.top" >}}

5、完整示例
{{< figure src="/favicon-96x96.png" alt="示例" title="图片"  caption="说明" attr="来源" attrlink="https://arianote.top"  class="w-75"  loading="lazy" >}}

1、最简图片展示

示例

2、带说明文字

示例

说明

3、带标题与说明

示例

标题

说明

4、可点击图片

示例

5、完整示例

示例

图片

说明 来源

Image

image 类似 figure,侧重响应式布局与加载性能,适合封面图或大尺寸图片。

Markdown
1
{{< image src="" alt="" caption="" >}}
参数说明
位置参数名可选值默认值说明
1src图片路径(必需)
2altsrc图片替代文本
3caption图片说明文字
title悬停提示文本
class<figure> 的 CSS class
height图片高度
width图片宽度
linkedtrue / falsetrue是否启用点击大图
rel图片链接的 rel 属性
loadingeager / lazylazy图片加载方式
optimisetrue / false是否启用图片优化
cacheRemotetrue / false是否缓存远程图片
  • rel 仅在 linked=true 时生效。
  • 启用 linked 时,图片自动集成 LightGallery。
  • optimisecacheRemote 可覆盖主题全局配置。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
1、最简图片使用
{{< image src="/favicon-96x96.png" >}}

2、带替代文本
{{< image src="/favicon-96x96.png" alt="示例" >}}

3、带说明文字
{{< image src="/favicon-96x96.png" caption="示例" >}}

4、悬停提示 + 自定义样式
{{< image src="/favicon-96x96.png" alt="示例" caption="带提示的图片" title="提示文本" class="shadow-lg" >}}

5、禁用点击大图
{{< image src="/favicon-96x96.png" caption="不可点击的图片" linked=false >}}

6、完整示例
{{< image src="/favicon-96x96.png" alt="示例" caption="图片说明" title="完整示例" class="w-75" loading="lazy" optimise=true cacheRemote=true >}}

1、最简图片使用

/favicon-96x96.png

2、带替代文本

/favicon-96x96.png
示例

3、带说明文字

/favicon-96x96.png
示例

4、悬停提示 + 自定义样式

示例
带提示的图片

5、禁用点击大图

/favicon-96x96.png
不可点击的图片

6、完整示例

示例
图片说明

超链接

link 用于生成指向链接,可显示为普通文本或卡片样式,适合外部网站、邮箱地址或可下载资源。

Markdown
1
{{< link href="" content="" title="" card="" card-icon="" >}}
参数说明
位置参数名可选值默认值说明
1href链接目标地址(必需)
2contenthref链接显示内容
3title悬停提示文本
4cardtrue / falsefalse是否使用卡片样式
5card-icon卡片图标
download<a>download 属性
class<a>class 属性
rel<a>rel 补充属性
external-icontrue / false是否显示外链图标
noreferrertrue / falsetrue是否自动添加 noreferrer
  • 设置 card=true 时,链接将以卡片形式展示。
  • 未指定 card-icon 时,会尝试从目标地址自动获取 favicon。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1、最简链接
{{< link "https://arianote.top" >}}

2、邮箱链接
{{< link "mailto:example@qq.com" >}}

3、自定义链接文本
{{< link href="https://arianote.top" content="AriaNote" >}}

4、带提示标题
{{< link href="https://arianote.top" content="AriaNote" title="温故而知新" >}}

5、卡片式链接
{{< link href="https://arianote.top" content="AriaNote" title="我的博客" card=true >}}

6、卡片链接 - 自定义图片图标
{{< link href="https://arianote.top" content="AriaNote" title="我的博客" card=true card-icon="/avatar.webp" >}}

7、卡片链接 - Font Awesome 图标
{{< link href="https://arianote.top" content="AriaNote" title="我的博客" card=true card-icon="fa-solid fa-blog" >}}

8、可下载链接
{{< link href="/avatar.webp" content="avatar.webp" title="下载头像" download="avatar.webp" >}}

9、卡片式下载链接
{{< link href="/avatar.webp" content="头像.webp" title="下载头像" download="avatar.webp" card=true >}}

1、最简链接

https://arianote.top

2、邮箱链接

mailto:example@qq.com

3、自定义链接文本

AriaNote

4、带提示标题

AriaNote

5、卡片式链接

AriaNote arianote.top card image

6、卡片链接 - 自定义图片图标

AriaNote arianote.top card image

7、卡片链接 - Font Awesome 图标

AriaNote arianote.top

8、可下载链接

avatar.webp

9、卡片式下载链接

头像.webp /avatar.webp

Ref

ref 用于在站点内部页面之间建立绝对引用链接,适合文章跳转或跨语言引用。

Markdown
1
[链接文本]({{< ref path="" >}})
参数说明
位置参数名默认值说明
1path目标页面路径
lang当前语言目标页面语言
outputFormat当前格式目标页面输出格式
  • 在 Markdown 内容中,ref 短代码已被视为过时用法。
  • 不以 / 开头的路径会先相对于当前页面解析,再回退至站点根目录。
  • 需配合 Markdown 链接语法使用。
Markdown
1
2
3
4
5
6
7
8
1、指向英文页面的绝对永久链接
[Link A]({{< ref path="/example" >}})

2、指向德语页面
[Link C]({{< ref path="/example" lang="de" >}})

3、指向德语页面的 JSON 输出格式
[Link D]({{< ref path="/example" lang="de" outputFormat="json" >}})

Relref

relref 用于在站点内部页面之间建立相对引用链接,适合站内文章跳转。

Markdown
1
[链接文本]({{< relref path="" >}})
参数说明
位置参数名默认值说明
1path目标页面路径
lang当前语言目标页面语言
outputFormat当前格式目标页面输出格式
  • 参数规则与 ref 完全一致。
  • 使用相对路径生成链接,适合站内结构调整场景。
Markdown
1
2
3
4
5
6
7
8
1、指向相对路径的页面链接
[Link B]({{< relref path="/example" >}})

2、相对路径的德语页面
[Link C]({{< relref path="/example" lang="de" >}})

3、相对路径的 JSON 输出格式
[Link D]({{< relref path="/example" lang="de" outputFormat="json" >}})

图表

Echarts

echarts 用于嵌入 ECharts 交互式图表,适合展示折线图、柱状图、饼图等数据可视化内容。

Markdown
1
2
3
{{< echarts width="" height="" >}}
ECharts option (JSON / YAML / TOML / JS)
{{< /echarts >}}
参数说明
位置参数名可选值默认值说明
1width100%图表容器宽度
2height30rem图表容器高度
jstrue / falsefalse是否以 JavaScript 方式解析
asynctrue / falsefalseJS 代码是否异步执行
data站点数据键(data/echarts
file页面资源或 assets 中的数据文件
  • widthheight 为位置参数,其余为命名参数。
  • datafile 用于从外部数据源加载图表配置。
  • 设置 js=true 时,内容将作为 JavaScript 执行。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
{{< echarts >}}
{
"xAxis": {
"type": "category",
"data": ["Mon", "Tue", "Wed", "Thu", "Fri"]
},
"yAxis": {
"type": "value"
},
"series": [
{
"type": "line",
"data": [120, 200, 150, 80, 70]
}
]
}
{{< /echarts >}}

Mermaid

mermaid 用于绘制 Mermaid 图表,适合流程图、时序图、状态图等结构化表达。

Markdown
1
2
3
{{< mermaid >}}
// mermaid diagram code here
{{< /mermaid >}}
Markdown
1
2
3
4
5
6
7
{{< mermaid >}}
graph LR;
A[Hard edge] -->|Link text| B(Round edge)
B --> C{Decision}
C -->|One| D[Result one]
C -->|Two| E[Result two]
{{< /mermaid >}}

Mapbox

mapbox 用于在页面中嵌入 Mapbox 交互式地图,支持缩放、标记点及自定义样式。

Markdown
1
{{< mapbox lng="" lat="" zoom="" marked="" light-style="" dark-style="" markers="" >}}
参数说明
位置参数名可选值默认值说明
1lng地图中心点经度(必需)
2lat地图中心点纬度(必需)
3zoom10初始缩放级别
4markedtrue / falsetrue是否显示中心点标记
5light-style主题配置浅色模式地图样式
6dark-style主题配置深色模式地图样式
7markers多标记点数组
navigationtrue / false主题配置是否显示导航控件
geolocatetrue / false主题配置是否显示定位控件
scaletrue / false主题配置是否显示比例尺
fullscreentrue / false主题配置是否显示全屏按钮
width100%地图宽度
height20rem地图高度
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
1、最简单示例
{{< mapbox lng=113.953277 lat=22.559102 >}}

2、指定缩放级别
{{< mapbox lng=113.953277 lat=22.559102 zoom=11 >}}

3、关闭中心点图钉
{{< mapbox lng=113.953277 lat=22.559102 zoom=11 marked=false >}}

4、自定义地图样式
{{< mapbox lng=-122.252 lat=37.453 zoom=10 marked=false light-style="mapbox://styles/mapbox/streets-zh-v1" >}}

5、多标记示例
{{< mapbox lng=113.953277 lat=22.559102 zoom=11 markers="[ {"lng":113.81841,"lat":22.637524,"description":"宝安国际机场"},
{"lng":113.953386,"lat":22.559052,"description":"市中心"},{"lng":114.035746,"lat":22.615667,"description":"深圳北站"} ]" >}}

6、自定义尺寸
{{< mapbox lng=113.953277 lat=22.559102 width=\"100%\" height=\"30rem\" >}}

影音

APlayer

aplayer 用于创建功能完整的音频播放器,支持播放列表、歌词同步、主题色自定义等。

Markdown
1
2
3
{{< aplayer autoplay="" >}}
{{< audio name="" artist="" url="" cover=" />}}
{{< /aplayer >}}
APlayer(容器)参数
参数可选值默认值说明
fixedtrue / falsefalse是否固定在页面底部
minitrue / falsefalse是否启用迷你模式
autoplaytrue / falsefalse是否自动播放
theme播放器主题色
loopall / one / noneall循环模式
orderlist / randomlist播放顺序
preloadnone / metadata / autoauto预加载方式
volume0 ~ 10.7默认音量
mutextrue / falsetrue是否互斥播放
lrcType0 / 1 / 30歌词类型
listFoldedtrue / falsefalse是否折叠播放列表
listMaxHeight播放列表最大高度
storageName本地存储键名
Audio(音频项)参数
参数可选值默认值说明
name任意字符串音频名称(必需)
artist任意字符串艺术家
url任意字符串音频文件地址(必需)
cover任意字符串封面图片地址
lrc任意字符串歌词文件地址
  • aplayer 用于创建播放器实例,至少有一个参数值;audio 用于定义音频条目。
  • 二者必须配合使用,且只能使用命名参数。
  • 更多高级配置参考 APlayer.js 官方文档
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
1、最简单的音频播放器
{{< aplayer autoplay=false >}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" />}}
{{< /aplayer >}}

2、包含多首音乐的播放列表
{{< aplayer theme="#b7daff" order="list" >}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" />}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" />}}
{{< /aplayer >}}

3、内嵌歌词
{{< aplayer lrcType=1 >}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" />}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" >}}
[00:00.00]Hello
[00:05.00]FixIt
{{< /audio >}}
{{< /aplayer >}}

4、完整参数
{{< aplayer fixed=false mini=false autoplay=false theme="#b7daff" loop="all" order="list" preload="auto" volume=0.7 mutex=true lrcType=1 listFolded=false listMaxHeight="" storageName="aplayer-setting" >}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp" cover="/avatar.webp" />}}
{{< audio name="Demo" artist="示例" url="/music/demo.mp3" cover="/avatar.webp"  cover="/avatar.webp" >}}
[00:00.00]APlayer audio2
[00:04.01]is
[00:08.02]amazing
{{< /audio >}}
{{< /aplayer >}}

Bilibili

bilibili 用于嵌入哔哩哔哩视频,支持多 P 分集播放与弹幕控制。

Markdown
1
{{< bilibili id="" p="" >}}
参数说明
位置参数名可选值默认值说明
1id视频 BV ID(必需)
2p1多 P 视频的分集序号,从 1 开始
autoplaytrue / falsefalse是否自动播放
postertrue / falsetrue是否显示视频封面
mutedtrue / falsefalse是否静音播放
danmakutrue / falsetrue是否开启弹幕
t0视频起始时间点(单位:秒)
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
1、单 P 视频
{{< bilibili id=BV19S411c7Wu >}}

2、多 P 视频
{{< bilibili id=BV1kt411k7Rq p=3 >}}

3、自动播放并关闭弹幕
{{< bilibili BV19S411c7Wu autoplay=true danmaku=false >}}

4、指定起始时间并静音
{{< bilibili BV19S411c7Wu t=60 muted=true >}}

Douyin

douyin 用于嵌入抖音短视频内容。

Markdown
1
{{< douyin id="" >}}
参数说明
位置参数名说明
1id抖音视频的 Video ID(必需)
Markdown
1
{{< douyin id=7388149561765760266 >}}

Music

music 是播放器能力的简化封装,适合快速嵌入单首音乐、播放列表或主流音乐平台资源。

Markdown
1
{{< music >}}
通用参数
参数可选值默认值说明
theme#448aff播放器主题色
fixedtrue / falsefalse是否固定在页面
minitrue / falsefalse迷你模式
autoplaytrue / falsefalse自动播放
volume0–10.7默认音量
mutextrue / falsetrue自动暂停其它播放器
loopall / one / nonenone列表循环模式
orderlist / randomlist播放顺序
list-foldedtrue / falsefalse初始是否折叠
list-max-height340px列表最大高度
  • looporderlist-foldedlist-max-height 仅适用于歌单、专辑等列表模式。
本地音乐参数
位置参数名可选值默认值说明
1url字符串音乐文件链接(必需)
name字符串音乐名称
artist字符串音乐作者
cover字符串封面图片链接
音乐平台参数
位置参数名可选值默认值说明
1autoURL音乐平台链接(必需)
1servernetease / tencent / kugou / xiami / baidu音乐平台
2typesong / playlist / album / search / artist音乐类型
3id字符串音乐 ID
  • 自动识别音乐平台时,仅需 auto ,且与其它三个参数互斥。
  • 自定义音乐平台时,servertypeid 必须同时存在。
Markdown
1
2
3
4
5
6
7
8
1、本地音乐
{{< music url="/music/demo.mp3" name="Demo" artist="示例" cover="/avatar.webp" >}}

2、音乐平台自动识别
{{< music auto="https://music.163.com/#/playlist?id=60198" >}}

3、自定义音乐平台
{{< music server="netease" type="song" id="1868553" >}}

Spotify

spotify 用于直接嵌入 Spotify 内容,支持专辑、歌单、艺术家或单曲。

Markdown
1
{{< spotify type="" id="" width="" height="" >}}
参数说明
位置参数名可选值说明
1typeartist / album / track / playlistSpotify 音乐类型(必需)
2idSpotify 音乐 ID(必需)
3width播放器宽度
4height播放器高度
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
1、艺术家
{{< spotify type=artist id=74ASZWbe4lXaubB36ztrGX >}}

2、专辑
{{< spotify type=album id=1ATL5GLyefJaxhQzSPVrLX >}}

3、曲目
{{< spotify type=track id=6rqhFgbbKwnb9MLmUQDhG6 >}}

4、播放列表
{{< spotify type=playlist id=37i9dQZF1DXcBWIGoYBM5M >}}

Vimeo

vimeo 通过 Hugo 原生 Shortcode 嵌入 Vimeo 视频。

Markdown
1
{{< vimeo id="" >}}
参数说明
位置参数名可选值默认值说明
1idVimeo 视频 ID(必需)
allowFullScreentrue / falsetrue是否允许全屏
class包裹元素的 CSS class
loadingeager / lazyeageriframe 加载策略
titleiframe 的 title 属性
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
1、最简用法
{{< vimeo id=55073825 >}}

3、关闭全屏并启用懒加载
{{< vimeo id=55073825 allowFullScreen=false loading=lazy >}}

4、添加自定义样式类
{{< vimeo id=55073825 class="video-frame" >}}

5、设置 iframe 标题
{{< vimeo id=55073825 title="Vimeo 示例视频" >}}

Youtube

youtube 通过 Hugo 原生 Shortcode 嵌入 YouTube 视频。

Markdown
1
{{< youtube id="" >}}
参数说明
位置参数名可选值默认值说明
1idYouTube 视频 ID(必需)
allowFullScreentrue / falsetrue是否允许全屏
autoplaytrue / falsefalse是否自动播放(开启后强制静音)
class包裹 div 的 CSS class
controlstrue / falsetrue是否显示播放器控件
start秒数视频开始播放时间
end秒数视频停止播放时间
looptrue / falsefalse是否循环播放
mutetrue / falsefalse是否静音
loadingeager / lazyeageriframe 加载策略
titleYouTube videoiframe 的 title 属性
  • muteautoplay=true 时始终为 true
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
1、最简用法
{{< youtube id=0RKpf3rK57I >}}

3、指定起止时间
{{< youtube id=0RKpf3rK57I start=30 end=60 >}}

4、自动播放 - 强制静音
{{< youtube id=0RKpf3rK57I autoplay=true >}}

5、关闭控件并循环播放
{{< youtube id=0RKpf3rK57I controls=false loop=true >}}

6、懒加载并设置标题
{{< youtube id=0RKpf3rK57I loading=lazy title="YouTube 示例视频" >}}

社交

Bluesky

bluesky 用于嵌入 Bluesky 平台的单条帖子,展示原帖内容及其上下文。

Markdown
1
{{< bluesky link="" >}}
参数说明
位置参数名说明
linkBluesky 帖子的完整链接(必需)
Markdown
1
{{< bluesky link="https://bsky.app/profile/bsky.app/post/3latotljnec2h" >}}

Instagram

instagram 用于嵌入 Instagram 单条帖子,自动加载官方样式并支持响应式布局。

Markdown
1
{{< instagram id="" >}}
参数说明
位置参数名说明
1idInstagram 帖子的 ID(必需)
Markdown
1
{{< instagram id=CxOWiQNP2MO >}}

QR

qr 用于将文本、链接或结构化信息生成二维码图像,适用于分享链接、联系方式或快速访问入口。

Markdown
1
{{< qr text="" level="" scale="" targetDir="" alt="" class="" id="" loading="" title="" >}}
参数说明
参数名可选值默认值说明
text编码内容(未指定时使用标签内文本)
levellow / medium / quartile / highmedium二维码纠错等级
scale4QR 模块像素尺寸(≥2)
targetDir输出目录(相对于 publishDir
altimgalt 属性
classimgclass 属性
idimgid 属性
loadingeager / lazy图片加载策略
titleimgtitle 属性
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
1、使用自闭合语法
{{< qr text="https://arianote.top" />}}

2、使用标签内容作为文本
{{< qr >}}文本{{< /qr >}}

3、电话号码二维码
{{< qr text="tel:+12065550101" />}}

4、生成 vCard 二维码
{{< qr level="low" scale=2 alt="QR code of vCard for John Smith" >}}
BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8:Smith;John;R.;Dr.;PhD
FN;CHARSET=UTF-8:Dr. John R. Smith, PhD.
ORG;CHARSET=UTF-8:ABC Widgets
TITLE;CHARSET=UTF-8:Vice President Engineering
TEL;TYPE=WORK:+12065550101
EMAIL;TYPE=WORK:jsmith@example.org
END:VCARD
{{< /qr >}}

1、URL 二维码

2、使用标签内容作为文本

3、电话号码二维码

4、Card 二维码

QR code of vCard for John Smith

Reward

reward 用于在文章底部展示打赏或赞助方式,支持多种支付平台。

Markdown
1
{{< reward wechatpay="" alipay="" paypal="" bitcoin="" author="" comment="" mode="" >}}
参数说明
位置参数名可选值默认值说明
1wechatpay微信支付二维码图片路径
2alipay支付宝二维码图片路径
3paypalPayPal 打赏图片路径
4bitcoin比特币收款图片路径
5author作者名称
6comment打赏提示文案
7modestatic / fixedstatic展示模式
  • 至少提供一种支付方式参数,否则不会渲染内容。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
1、基础用法(微信 + 支付宝)
{{< reward wechatpay="/images/wechatpay.gif" alipay="/images/alipay.gif" >}}

2、添加提示文案
{{< reward wechatpay="/images/wechatpay.gif" alipay="/images/alipay.gif"
    comment="给作者买杯卡布奇诺~" >}}

3、指定作者名称
{{< reward wechatpay="/images/wechatpay.gif" author="FixIt 作者" >}}

4、使用固定展示模式
{{< reward wechatpay="/images/wechatpay.gif" alipay="/images/alipay.gif"
    mode="fixed" >}}

X

x 用于嵌入 X(原 Twitter)平台的单条帖子。

Markdown
1
{{< x user="" id="" >}}
参数说明
参数名说明
user发布该帖子的 X 用户名(必需)
idX 帖子的 ID(必需)
Markdown
1
{{< x user="SanDiegoZoo" id="1453110110599868418" >}}

开发

Env

env 根据 Hugo 开发与生成环境条件渲染内容,避免本地加载外部服务,提高构建和调试效率。

Markdown
1
2
3
{{< env "" >}}
仅在指定环境中渲染的内容
{{< /env >}}
参数说明
位置参数名说明
1envHugo 环境名称(必需)
  • env 的取值通常与 HUGO_ENV 一致,常见值包括 developmentproduction
Markdown
1
2
3
4
5
仅在生产环境渲染内容
{{< env "production" >}}
This content is only rendered in the production environment.
里面的内容只会在生产环境中渲染。
{{< /env >}}

Fixit-encryptor

fixit-encryptor 用于对页面内容进行局部或全部加密,需输入正确密码后才能查看。

Markdown
1
2
3
{{% fixit-encryptor password="" message="" %}}
加密内容
{{% /fixit-encryptor %}}
参数说明
位置参数名说明
1password部分加密内容的密码(必需)
2message解密输入框的提示信息
  • 全文加密:在 Front Matter 中设置 password(必需) 与 message
  • 局部加密:使用 fixit-encryptor Shortcode。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
1、部分加密
{{< fixit-encryptor password="1212" message="密码是 1212" >}}这是被加密的部分内容。{{< /fixit-encryptor >}}

2、嵌套加密
{{< fixit-encryptor "1212" >}}
第一层加密内容
{{< fixit-encryptor "1212" >}}
第二层加密内容
{{< /fixit-encryptor >}}
{{< /fixit-encryptor >}}

1、部分加密

decryptor loading
6L+Z502f9ed2a8d1e08d8f74f5303e9eb93637d47f82ab6f1c15871cf8dd0481piv6KKr5Yqg5a+G55qE6YOo5YiG5YaF5a6544CC

2、嵌套加密

decryptor loading
56ys502f9ed2a8d1e08d8f74f5303e9eb93637d47f82ab6f1c15871cf8dd0481LiA5bGC5Yqg5a+G5YaF5a65CjxmaXhpdC1lbmNyeXB0b3I+CjxkaXYgY2xhc3M9ImZpeGl0LWRlY3J5cHRvci1jb250YWluZXIiPgo8aW1nIGNsYXNzPSJmaXhpdC1kZWNyeXB0b3ItbG9hZGluZyIgc3JjPSIvaW1hZ2VzL2xvYWRpbmcubWluLnN2ZyIgYWx0PSJkZWNyeXB0b3IgbG9hZGluZyIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiAvPgo8bGFiZWwgZm9yPSJpZC00MSIgdGl0bGU9IuWvhueggSI+CjxpbnB1dCB0eXBlPSJwYXNzd29yZCIgaWQ9ImlkLTQxIiBjbGFzcz0iZml4aXQtZGVjcnlwdG9yLWlucHV0IiBwbGFjZWhvbGRlcj0i8J+UkSDor7fovpPlhaXlr4bnoIEiIC8+CjwvbGFiZWw+CjxidXR0b24gY2xhc3M9ImZpeGl0LWRlY3J5cHRvci1idG4iPjxpIGNsYXNzPSJmYS1zb2xpZCBmYS11bmxvY2siIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+6L+b5YWlPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iZGVjcnlwdG9yLWNvbnRlbnQiPjwvZGl2PjxjaXBoZXItdGV4dCBkYXRhLXBhc3N3b3JkPSI0OGM3MjA3NmE5NDAzOGQxIj41NnlzNTAyZjllZDJhOGQxZTA4ZDhmNzRmNTMwM2U5ZWI5MzYzN2Q0N2Y4MmFiNmYxYzE1ODcxY2Y4ZGQwNDgxTHFNNWJHQzVZcWc1YStHNVlhRjVhNjU8L2NpcGhlci10ZXh0Pgo8L2ZpeGl0LWVuY3J5cHRvcj4=

File Tree

file-tree 用于将目录结构或层级数据渲染为可交互的文件树视图,适合展示项目结构或层级数据。

Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{{< file-tree [path] [level] [folderSlash]
      [file="filename"]
      [data="datafilename"]
      [ignoreList="item1,item2"]
      [highlightList="item1,item2"]
      [name="rootName"] >}}

<!-- 可选:树结构数据 -->

{{< /file-tree >}}
参数说明
位置参数名可选值默认值说明
1path/扫描的目录路径
2level-1 / 0 / 正整数1展开层级深度
3folderSlashtrue / falsefalse文件夹名称是否追加 /
file外部数据文件(JSON/YAML/TOML)
datadata/filetree/ 中的数据文件
ignoreList忽略的文件或目录
highlightList高亮的文件或目录
name字符串 / {path}根节点显示名称
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
1、使用实际文件系统
{{< file-tree />}}

2、指定路径并展开两层
{{< file-tree path="documentation" level=2 folderSlash=true />}}

3、使用内联数据
{{< file-tree >}}

- name: src
  type: dir
  children:
  - name: index.ts
    type: file
  - name: app.ts
    type: file
- name: package.json
  type: file
  {{< /file-tree >}}

4、从文件加载结构
{{< file-tree file="data/tree.yml" />}}

3、使用内联数据

  • src
    • index.ts
    • app.ts
  • package.json

Highlight

highlight 用于在 Markdown 中展示带有语法高亮的代码块,是展示示例代码的推荐方式。

Markdown
1
2
3
{{< highlight [LANG] [OPTIONS] >}}
CODE
{{< /highlight >}}
参数说明
位置参数名说明
1LANG代码语言(不区分大小写)
2OPTIONS用引号包裹的键值对选项
Markdown
1
2
3
4
5
{{< highlight python "linenos=table,hl_lines=2 3" >}}
def hello():
print("Hello Hugo!")
print("Bye!")
{{< /highlight >}}
1
2
3
def hello():
print("Hello Hugo!")
print("Bye!")

Gist

gist 用于在文档中嵌入 GitHub Gist 中的代码,适合展示外部或可复用的代码片段。

Markdown
1
{{< gist [USERNAME] [GIST_ID] [FILE] >}}
参数说明
位置参数名说明
1usernameGist 所属的 GitHub 用户名(必需)
2gist_idGist 的唯一 ID(必需)
3file需要展示的特定文件
  • 未指定 file 时,将显示该 Gist 的全部内容。
  • 等同于在 HTML 中插入对应 Gist 的 <script> 引用。
Markdown
1
2
3
4
5
1、显示整个 gist
{{< gist Lruihao fb8b2d0353465c4d40bf74818db80710 >}}

2、显示 gist 中的某个文件
{{< gist Lruihao fb8b2d0353465c4d40bf74818db80710 example.py >}}

Param

param 用于读取页面 Front Matter 或站点配置中的参数值。

Markdown
1
{{< param [PARAM_NAME] */>%}}

Row

raw 用于输出不经过 Hugo 或 Markdown 解析的原始内容,常用于展示 Shortcode 或模板语法示例。

Markdown
1
2
3
{{</* raw [TAG] >}}
原始内容
{{< /raw >}}
参数说明
位置参数名默认值说明
1tagdiv原始内容的父级 HTML 标签
  • raw shortcode 会 禁用内部 Markdown 渲染,内容将被直接作为 HTML 输出。
  • 常用于混合 Markdown 与 HTML 时避免语法冲突。
Markdown
1
2
原始的带有 Markdown 和 HTML 语法的内容:
{{< raw "span" >}}**Hello** <strong>World</strong>{{< /raw >}}

Script

script 用于嵌入自定义 JavaScript 代码,可能会影响页面行为。

Markdown
1
2
3
{{< script >}}
JavaScript 脚本内容
{{< /script >}}
Markdown
1
2
3
{{< script >}}
console.log('Hello World!');
{{< /script >}}

Style

style 用于定义或引入自定义 CSS,仅在当前 Shortcode 作用域内生效。

Markdown
1
2
3
{{< style [STYLE [TAG] >}}
内容
{{< /style >}}
参数说明
位置参数名默认值说明
1style自定义样式内容(必需)
2tagdiv包裹内容的父级 HTML 标签
  • 样式内容支持 SASS 嵌套语法。
  • & 表示当前包裹元素。
Markdown
1
2
3
{{< style "text-align:right; strong{color:#00b1ff;}" >}}
This is a **right-aligned** paragraph.
{{< /style >}}

Version

version 用于标记功能或项目的版本变更信息,常见于更新日志或文档注释中。

Markdown
1
{{< version [VERSION] [TYPE] [PREFIX] [PROJECT] >}}
参数说明
位置参数名可选值默认值说明
1version版本号(必需)
2typenew / changed / deleted / deprecatednew版本变更类型
3prefix见下文发行标签 URL 前缀
4projectFixIt项目名称
  • type 用于指示版本状态,如新增、变更或废弃。
  • prefix 的默认值为 https://github.com/hugo-fixit/FixIt/releases/tag/v
  • 如果未显式指定仓库前缀,将使用 params.repoVersion 或默认 FixIt 仓库。
Markdown
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
1、新增功能
{{< version 0.3.15 >}}

2、功能更改
{{< version 0.3.15 changed >}}

3、功能删除
{{< version 0.3.15 deleted >}}

4、功能废弃
{{< version 0.3.15 deprecated >}}

1、新增功能

FixIt 0.3.15 | 新增

2、功能更改

FixIt 0.3.15 | 更改

3、功能删除

FixIt 0.3.15 | 删除

4、功能废弃

FixIt 0.3.15 | 弃用

留言交流