4.4 KiB
weight | title | date | lastmod | draft | author | authorLink | description | resources | tags | categories | lightgallery | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
3 | Theme Documentation - Built-in Shortcodes | 2020-03-04T16:29:41+08:00 | 2020-03-04T16:29:41+08:00 | false | Dillon | https://dillonzq.com | Hugo provides multiple built-in shortcodes for author convenience and to keep your markdown content clean. |
|
|
|
true |
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.jpg" title="Lighthouse (figure)" */>}}
The rendered output looks like this:
{{< figure src="/images/lighthouse.jpg" title="Lighthouse (figure)" >}}
The HTML looks like this:
<figure>
<img src="/images/lighthouse.jpg"/>
<figcaption>
<h4>Lighthouse (figure)</h4>
</figcaption>
</figure>
2 gist
Example gist
input:
{{</* gist spf13 7896402 */>}}
The rendered output looks like this:
{{< gist spf13 7896402 >}}
The HTML looks like this:
<script type="application/javascript" src="https://gist.github.com/spf13/7896402.js"></script>
3 highlight
Example highlight
input:
{{</* highlight html */>}}
<section id="main">
<div>
<h1 id="title">{{ .Title }}</h1>
{{ range .Pages }}
{{ .Render "summary"}}
{{ end }}
</div>
</section>
{{</* /highlight */>}}
The rendered output looks like this:
{{< highlight html >}}
{{ .Title }}
{{ range .Pages }} {{ .Render "summary"}} {{ end }}4 instagram
{{< admonition question "Instagram’s API was deprecated since October 24th, 2020" >}} The instagram-shortcode refers an endpoint of Instagram’s API, that’s deprecated since October 24th, 2020. Thus, no images can be fetched from this API endpoint, resulting in an error when the instagram-shortcode is used. For more information please have a look at GitHub issue #7879. {{< /admonition >}}
5 param
Example param
input:
{{</* param description */>}}
The rendered output looks like this:
{{< param description >}}
6 ref and relref
Documentation of ref
and relref
7 tweet
Example tweet
input:
{{</* tweet user=GoHugoIO id=917359331535966209 */>}}
The rendered output looks like this:
{{< tweet user=GoHugoIO id=917359331535966209 >}}
8 vimeo
Example vimeo
input:
{{</* vimeo 146022717 */>}}
The rendered output looks like this:
{{< vimeo 146022717 >}}
9 youtube
Example youtube
input:
{{</* youtube w7Ft2ymGmfc */>}}
The rendered output looks like this:
{{< youtube w7Ft2ymGmfc >}}