mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
e81208265b
35abbc86 Add example with taxonomy for title template func 85e28c10 Remove comment from variable in front matter example eee8543b Remove comment from variable in front matter example 13a8e0b7 Add missing closing and opening comment tags 83531772 Replace http://example.{com,org}/ with https://example.{com,org}/ 6727d820 Update gh repo for issues in config 3a58818e Add note to install Testify 19f13e61 Fix YAML examples in taxonomies.md dc4b90db Replace old RSS template with new embedded version (#116) 00f39bd7 camelCase output format options 902a14a1 Add missing word to pretty URLs explanation git-subtree-dir: docs git-subtree-split: 35abbc869199b852922c024a29e2370272a7c1c8
51 lines
1.9 KiB
Markdown
51 lines
1.9 KiB
Markdown
---
|
|
title: absURL
|
|
description: Creates an absolute URL based on the configured baseURL.
|
|
godocref:
|
|
date: 2017-02-01
|
|
publishdate: 2017-02-01
|
|
lastmod: 2017-02-01
|
|
categories: [functions]
|
|
menu:
|
|
docs:
|
|
parent: "functions"
|
|
#tags: [urls]
|
|
signature: ["absURL INPUT"]
|
|
workson: []
|
|
hugoversion:
|
|
relatedfuncs: [relURL]
|
|
deprecated: false
|
|
aliases: []
|
|
---
|
|
|
|
Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. 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)][jsonld], 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" >}}
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context" : "http://schema.org",
|
|
"@type" : "BlogPosting",
|
|
"image" : {{ apply .Params.images "absURL" "." }}
|
|
}
|
|
</script>
|
|
{{< /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][safejs] 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 %}}
|
|
|
|
[apply function]: /functions/apply/
|
|
[configuration]: /getting-started/configuration/
|
|
[jsonld]: https://developers.google.com/search/docs/guides/intro-structured-data
|
|
[safejs]: /functions/safejs
|