只要我一直在使用它(至少两年),我就无法在 Hugo 中突出显示“当前菜单项”。
如果我在我的内容文件中使用 frontmatter 来定义菜单(即将每个内容单独添加到菜单中),这似乎是可能的。但是,我不想用这些信息在我的内容文件的前面乱扔垃圾,尤其是看到如何使用主配置文件定义菜单。
这是我在配置文件中声明菜单的方式(我更喜欢使用 JSON 而不是 YAML):
"menu": {
"main": [
{
"name": "Home",
"weight": 1,
"url": "/"
},
{
"name": "About",
"weight": 2,
"url": "/about"
},
{
"name": "Blog",
"weight": 3,
"url": "/blog"
},
{
"name": "Contact",
"weight": 4,
"url": "/contact"
}
]
},
Run Code Online (Sandbox Code Playgroud)
这是我的菜单模板
<ul class="nav">
{{ $currentPage := . }}
{{ range .Site.Menus.main }}
{{ if .HasChildren }}
<li class="nav-item nav-item--has-submenu{{ if $currentPage.HasMenuCurrent "main" . }} nav-item--active{{ end }}">
<a class="nav-link" href="javascript:;" title="{{ .Name …Run Code Online (Sandbox Code Playgroud) hugo ×1