本文介绍菜单的属性和如何设置菜单。
属性 | 类型 | 描述 |
---|---|---|
name | string | 菜单名称 |
identifier | string | 菜单标识,一般用于定义多层级菜单。 |
weight | number | 菜单权重,越小优先级越高。 |
parent | string | 父级菜单的标识,也就是 identifier 。 |
url | string | 菜单 URL。 |
pre | string | 菜单的前置字符串。 |
post | string | 菜单的尾部字符串。 |
params | object | 模块的特定参数。 |
每个菜单集都有其自己的标识,比如 main
、footer
等等,其与对应的模块相关。
Hugo 支持两种配置菜单的方式:菜单配置文件和页面参数(又称 front matter)。
menus.toml
1[[main]]
2 name = 'Example'
3 url = 'https://example.com'
toml
menus.yaml
1main:
2- name: Example
3 url: https://example.com
yaml
menus.json
1{
2 "main": [
3 {
4 "name": "Example",
5 "url": "https://example.com"
6 }
7 ]
8}
json
其中
main
为菜单集标识。
当我们打算将某一页面添加到菜单集,最简便的方法是于页面设置的以下参数。
menus.toml
1[menu]
2 [menu.main]
3 weight = 2
toml
menus.yaml
1menu:
2 main:
3 weight: 2
yaml
menus.json
1{
2 "menu": {
3 "main": {
4 "weight": 2
5 }
6 }
7}
json
这种方式不需要显式地指定菜单的名称和 URL。