You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Hugo Docsy主题添加菜单外部链接遇协议不支持报错求助

在Hugo Docsy主题中添加外部菜单链接的正确方法

你遇到的问题是因为Docsy(以及Hugo本身)对页面front matter里的url字段有特定限制——这个字段是用来定义内部页面路径的,不能直接填带http/https协议的外部链接,所以才会出现"URLs with protocol (http*) not supported"的错误。

下面给你两种可行的解决方案,根据你的需求选择即可:

方法1:通过站点配置文件直接定义外部菜单

这是最直接的方式,不需要修改markdown文件,直接在你的站点配置文件(比如config.toml,若使用YAML则是config.yaml)里添加菜单条目:

TOML格式示例:

[[menu.main]]
name = "Documentation"
weight = 20
url = "https://www.myurl.com"
external = true

YAML格式示例:

menu:
  main:
    - name: "Documentation"
      weight: 20
      url: "https://www.myurl.com"
      external: true

添加后重启Hugo服务,菜单里就会出现指向外部链接的"Documentation"选项了。

方法2:在markdown文件的菜单配置中指定外部链接

如果你需要保留markdown文件的结构(比如这个菜单条目需要关联某个内部页面,但点击跳转到外部),可以修改_index.md的front matter,把外部链接配置在menu.main的层级下,同时加上external: true标记:

---
title: "Documentation"
linkTitle: "Documentation"
weight: 20
menu:
  main:
    weight: 20
    url: "https://www.myurl.com"
    external: true
---

这样就不会触发之前的错误了——因为这里的url是属于菜单条目的配置,而不是页面本身的url字段,Hugo会正确识别这是一个外部链接。

两种方法都能解决你的问题,推荐第一种,因为外部菜单链接直接在配置里管理会更清晰。

内容的提问来源于stack exchange,提问作者grexor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 07:40:08