hugo/content/en/functions/urls/URLize.md
Bjørn Erik Pedersen 9b0050e9aa Squashed 'docs/' content from commit 5c085a37b
git-subtree-dir: docs
git-subtree-split: 5c085a37b297bf12f59efeaae591418ec025c10d
2024-01-27 10:48:33 +01:00

1.4 KiB

title description categories keywords action aliases
urls.URLize Returns the given string, sanitized for usage in a URL.
aliases related returnType signatures
urlize
functions/urls/Anchorize
string
urls.URLize INPUT
/functions/urlize

{{% include "/functions/urls/_common/anchorize-vs-urlize.md" %}}

Example

Use the urlize function to create a link to a term page.

Consider this site configuration:

{{< code-toggle file=hugo >}} [taxonomies] author = 'authors' {{< /code-toggle >}}

And this front matter:

{{< code-toggle file=content/books/les-miserables.md fm=true >}} title = 'Les Misérables' authors = ['Victor Hugo'] {{< /code-toggle >}}

The published site will have this structure:

public/
├── authors/
│   ├── victor-hugo/
│   │   └── index.html
│   └── index.html
├── books/
│   ├── les-miserables/
│   │   └── index.html
│   └── index.html
└── index.html

To create a link to the term page:

{{ $taxonomy := "authors" }}
{{ $term := "Victor Hugo" }}
{{ with index .Site.Taxonomies $taxonomy (urlize $term) }}
  <a href="{{ .Page.RelPermalink }}">{{ .Page.LinkTitle }}</a>
{{ end }}

To generate a list of term pages associated with a given content page, use the GetTerms method on a Page object.