1.9 KiB
title | description | godocref | date | publishdate | lastmod | categories | menu | signature | workson | hugoversion | relatedfuncs | deprecated | aliases | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
relURL | Given a string, prepends the relative URL according to a page's position in the project directory structure. | 2017-02-01 | 2017-02-01 | 2017-02-01 |
|
|
|
|
false |
Both absURL
and relURL
consider the configured value of baseURL
in your site's config
file. Given a baseURL
set to http://example.com/hugo/
:
{{ "mystyle.css" | absURL }} → "http://example.com/hugo/mystyle.css"
{{ "mystyle.css" | relURL }} → "/hugo/mystyle.css"
{{ "http://gohugo.io/" | relURL }} → "http://gohugo.io/"
{{ "http://gohugo.io/" | absURL }} → "http://gohugo.io/"
The last two examples may look strange but can be very useful. For example, the following shows how to use absURL
in JSON-LD structured data for SEO where some of your images for a piece of content may or may not be hosted locally:
{{< code file="layouts/partials/schemaorg-metadata.html" download="schemaorg-metadata.html" >}}
{{< /code >}}
The above uses the apply function and also exposes how the Go template parser JSON-encodes objects inside <script>
tags. See the safeJS template function for examples of how to tell Hugo not to escape strings inside of such tags.
{{% note "Ending Slash" %}}
absURL
and relURL
are smart about missing slashes, but they will not add a closing slash to a URL if it is not present.
{{% /note %}}