<!-- image -->
<!-- https://github.com/gohugoio/hugo/issues/4406 -->
<!-- https://github.com/gohugoio/hugo/issues/4441 -->
<figure{{ with .Get "class" }} class="{{ . }}"{{ end }}>
    {{ if .Get "link"}}<a href="{{ .Get "link" }}"{{ with .Get "target" }} target="{{ . }}"{{ end }}{{ with .Get "rel" }} rel="{{ . }}"{{ end }}>{{ end }}
        <img src="{{ .Get "src" }}"
             alt="{{ if (or (.Get "alt") (.Get "caption")) }}
                       {{ with .Get "alt"}}
                           {{- . -}}
                       {{else}}
                           {{- .Get "caption" | markdownify | plainify -}}
                       {{ end }}
                  {{ else }}
                       {{- .Get "src" -}}
                  {{ end }}"
             {{- with .Get "width" }}width="{{ . }}" {{ end -}}
             {{- with .Get "height" }}height="{{ . }}" {{ end -}}/>
        {{ if .Get "link"}}</a>{{ end }}
        {{ if or (or (.Get "title") (.Get "caption")) (.Get "attr")}}
            <figcaption>
                {{ if isset .Params "title" }}
                    <h4>{{ .Get "title" }}</h4>
                {{ end }}
                {{ if (or (.Get "caption") (.Get "attr")) }}<p>
                    {{ .Get "caption" | markdownify }}
                    {{ with .Get "attrlink"}}<a href="{{ . }}"> {{ end }}
                        {{ .Get "attr" | markdownify }}
                        {{ if .Get "attrlink"}}</a> {{ end }}</p>
                {{ end }}
            </figcaption>
        {{ end }}
</figure>
<!-- image -->
