短代码

ref

用 ref 短代码插入指向指定页面的永久链接,并说明参数与报错处理。

用法

ref 短代码接受单个位置参数(路径),或者一个或多个命名参数,见下表。

参数

path
(string)目标页面的路径。不以斜杠(/)开头的路径先相对当前页面解析,再相对站点其余部分解析。
lang
(string)目标页面的语言。默认为当前语言。可选。
outputFormat
(string)目标页面的输出格式。默认为当前输出格式。可选。

示例

ref 短代码的典型用途是为 Markdown 链接提供目标地址。

下面的例子给出站点英文版页面上的渲染结果:

[Link A]({{% ref "/books/book-1" %}})

[Link B]({{% ref path="/books/book-1" %}})

[Link C]({{% ref path="/books/book-1" lang="de" %}})

[Link D]({{% ref path="/books/book-1" lang="de" outputFormat="json" %}})

渲染结果:

<a href="https://example.org/en/books/book-1/">Link A</a>

<a href="https://example.org/en/books/book-1/">Link B</a>

<a href="https://example.org/de/books/book-1/">Link C</a>

<a href="https://example.org/de/books/book-1/index.json">Link D</a>

错误处理

默认情况下,Hugo 无法解析路径时会抛出错误并让构建失败。可以在项目配置中改为警告,并指定无法解析路径时返回的地址:

refLinksErrorLevel = 'warning'
refLinksNotFoundURL = '/some/other/url'