absURL
Syntax
absURL INPUT
Both absURL
and relURL
consider the configured value of baseURL
in your site’s config
file. Given a baseURL
set to https://example.com/hugo/
:
{{ "mystyle.css" | absURL }} → "https://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 (SEO), where some of your images for a piece of content may or may not be hosted locally:
layouts/partials/schemaorg-metadata.html
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "BlogPosting",
"image" : {{ apply .Params.images "absURL" "." }}
}
</script>
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.