Theme Documentation - Built-in Shortcodes

Hugo provides multiple built-in shortcodes for author convenience and to keep your markdown content clean.
Hugo uses Markdown for its simple content format. However, there are a lot of things that Markdown doesn’t support well. You could use pure HTML to expand possibilities.
But this happens to be a bad idea. Everyone uses Markdown because it’s pure and simple to read even non-rendered. You should avoid HTML to keep it as simple as possible.
To avoid this limitations, Hugo created shortcodes. A shortcode is a simple snippet that can generate reasonable HTML code and conforms to Markdown’s design philosophy.
Hugo ships with a set of predefined shortcodes that represent very common usage. These shortcodes are provided for author convenience and to keep your markdown content clean.
1 figure
Example figure
input:
{{< figure src="/images/lighthouse.webp" title="Lighthouse (figure)" >}}
The rendered output looks like this:

Lighthouse (figure)
The HTML looks like this:
<figure>
<img src="/images/lighthouse.webp"/>
<figcaption>
<h4>Lighthouse (figure)</h4>
</figcaption>
</figure>
2 gist
Example gist
input:
{{< gist spf13 7896402 >}}
The rendered output looks like this:
The HTML looks like this:
<script type="application/javascript" src="https://gist.github.com/spf13/7896402.js"></script>
3 param
Example param
input:
{{< param description >}}
The rendered output looks like this:
Hugo provides multiple built-in shortcodes for author convenience and to keep your markdown content clean.4 ref and relref
Documentation of ref
and relref
5 x
Example x
input:
{{< x user="SanDiegoZoo" id="1453110110599868418" >}}
Owl bet you'll lose this staring contest 🦉 pic.twitter.com/eJh4f2zncC
— San Diego Zoo Wildlife Alliance (@sandiegozoo) October 26, 2021
6 vimeo
Example vimeo
input:
{{< vimeo 146022717 >}}
The rendered output looks like this:
7 youtube
Example youtube
input:
{{< youtube w7Ft2ymGmfc >}}
The rendered output looks like this: