hugo/docs/content/en/functions/urls/RelRef.md
2023-10-20 09:43:56 +02:00

1.9 KiB

title linkTitle description categories keywords menu function relatedFunctions aliases
urls.RelRef relref Returns the relative permalink to a page.
functions
docs
parent
functions
aliases returnType signatures
relref
template.HTML
urls.RelRef . PAGE
urls.Ref
urls.RelRef
/functions/relref

This function takes two arguments:

  • The context of the page from which to resolve relative paths, typically the current page (.)
  • The path to a page, with or without a file extension, with or without an anchor. A path without a leading / is first resolved relative to the given context, then to the remainder of the site.
{{ relref . "about" }}
{{ relref . "about#anchor" }}
{{ relref . "about.md" }}
{{ relref . "about.md#anchor" }}
{{ relref . "#anchor" }}
{{ relref . "/blog/my-post" }}
{{ relref . "/blog/my-post.md" }}

The permalink returned is relative to the protocol+host portion of the baseURL specified in the site configuration. For example:

Code baseURL Permalink
{{ relref . "/about" }} http://example.org/ /about/
{{ relref . "/about" }} http://example.org/x/ /x/about/

To return the relative permalink to another language version of a page:

{{ relref . (dict "path" "about.md" "lang" "fr") }}

To return the relative permalink to another Output Format of a page:

{{ relref . (dict "path" "about.md" "outputFormat" "rss") }}

Hugo emits an error or warning if the page cannot be uniquely resolved. The error behavior is configurable; see Ref and RelRef Configuration.

This function is used by Hugo's built-in relref shortcode. For a detailed explanation of how to leverage this shortcode for content management, see Links and Cross References.