Hugo页面链接在新标签页打开的设置

博客文章中的链接默认是在当前页面跳转的,不符合我的使用习惯。Hugo官方对此是有解决方案的,以下是解决方案。

我的博客使用的 Hugo 版本是0.87.0.。自0.69版本以来,Hugo 改为使用 Goldmark 渲染博客页面,为了实现新窗口打开链接,需要改变渲染时的 link 的属性,这需要使用 RenderHook 技术。

在所使用的模板的目录下按以下文件路径theme/[themeName]/layouts/_default/_markup/render-link.html,在新建的render-link.html中输入以下内容:

<a href="{{ .Destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}{{ if strings.HasPrefix .Destination "http" }} target="_blank"{{ end }}>{{ .Text }}</a>

其实,就是在该渲染模板中告诉 Goldmark 将链接的 target="_blank" 属性加进去。

以上,保存后重新提交到远程仓库就可以了。

  • 参考链接

PorchLab-Hugo - Open External Links in a New Tab

How to Open Link in New Tab with Hugo’s new Goldmark Markdown Renderer

https://agrimprasad.com/post/hugo-goldmark-markdown/

内容声明与版权协议

  • 版权协议:本文采用 CC BY-NC-SA 4.0(署名-非商业性使用-相同方式共享) 协议进行许可。转载、演绎请务必保留作者署名及原文链接,且不得用于商业目的。
  • AI 辅助说明:本博客部分内容(如排版设计、个别局部、特定对话片段等)可能由 AI(LLM大语言模型)辅助生成。作者在此明确声明:本人对文章的核心框架、思想立论与最终呈现拥有绝对主导权与最终解释权。
  • 观点免责:文中明示的由 AI 生成的特定文本、对话输出,仅作为理性探讨以及观点展示,不代表本人真实立场、价值观或事实背书。对于因 AI 幻觉造成的客观事实偏差,请读者审慎甄别。
  • 认知时效性:文章仅代表作者在撰写当下的认知状态与情绪切片。随着个人心智迭代与客观事物发展,作者观点可能发生演变。欢迎基于理性的交流与批评。