I want hugo to generate the link with “download” like here:
<a href="/documents/my_doc.txt" download>Click here to download</a>
currently it generates this:
<a href="/documents/my_doc.txt" >Click here to download</a>
I want the browser to download the link instead of displaying it
1 Like
Please edit your examples. What you are looking for is unclear.
I want to add “download” to a link in hugo. I unfortunately don’t know how to make that clearer with more examples
Your 1st example includes the download attribute twice. Your 2nd example includes the download attribute once. Please edit your examples.
that is the text of the link
oh ok
<a href="/documents/my_doc.txt" download>Click here to download</a>
currently it generates this:
<a href="/documents/my_doc.txt">Click here to download</a>
How are you adding the download
attribute in your project’s templates?
Go templates come with strict security. Simply adding an HTML attribute will not work because it is considered unsafe.
Have a look at the safeHTMLAttr
function.
If the above does not fix the issue, then you will need to share a sample repository replicating your project’s structure for people in this forum to see what is going on.
1 Like
Option 1 - Use a Shortcode
layouts/shortcodes/a.html
<a
{{- range $k, $v := .Params -}}
{{- (printf " %s=%q" $k $v) | safeHTMLAttr -}}
{{- end -}}
>
{{- .Inner | .Page.RenderString -}}
</a>
Markdown:
{{< a href="/documents/my_doc.txt" download="download" >}}
Click here to download
{{< /a >}}
Option 2 - Use HTML within Markdown
config.toml
[markup.goldmark.renderer]
unsafe = true
Markdown:
<a href="/documents/my_doc.txt" download>Click here to download</a>
2 Likes