如何在Hugo(Doks主题)中移除外部链接的站点前缀
解决Hugo Doks主题外部链接自动添加站点前缀的问题
问题核心:你配置的外部链接没有添加http://或https://协议头,Hugo会默认将不带协议的URL识别为站内相对路径,因此自动拼接上了站点前缀。
解决步骤:
修正配置文件中的URL格式
打开config.toml,给每个外部链接的URL加上完整的协议头(推荐用https):[params] externalLinks = [ {url = "https://www.notbaseurl.com", text="external site 0"}, {url = "https://www.notbaseurl.com", text="external site 1"} ]确认模板调用逻辑
你当前在layouts/index.html中的代码是正确的,无需修改,但可以确保safeURL过滤器正常工作,它会正确处理带协议的绝对URL:{{ $myLink := index .Site.Params.externalLinks 0 }} <a href="{{ $myLink.url | safeURL }}" target="_blank" rel="noopener">{{ $myLink.text | safeHTML }}</a>
额外提示
如果你的目标域名支持https,建议统一使用该协议,避免浏览器出现安全提示或自动跳转问题。
内容的提问来源于stack exchange,提问作者jrida523
相关产品推荐
相关产品推荐

