KeyName
Syntax
MENUENTRY.KeyName
Returns
string
在这个菜单定义中,第二个条目不包含identifier
,所以Identifier
方法返回它的name
属性:
hugo.
menu:
main:
- identifier: about
name: 关于
pageRef: /about
weight: 10
- name: 联系方式
pageRef: /contact
weight: 20
[menu]
[[menu.main]]
identifier = 'about'
name = '关于'
pageRef = '/about'
weight = 10
[[menu.main]]
name = '联系方式'
pageRef = '/contact'
weight = 20
{
"menu": {
"main": [
{
"identifier": "about",
"name": "关于",
"pageRef": "/about",
"weight": 10
},
{
"name": "联系方式",
"pageRef": "/contact",
"weight": 20
}
]
}
}
在这个示例中,在多语言网站上查询翻译表时使用了KeyName
方法,如果翻译表中不存在匹配的键,则回退到name
属性:
<ul>
{{ range .Site.Menus.main }}
<li><a href="{{ .URL }}">{{ or (T (.KeyName | lower)) .Name }}</a></li>
{{ end }}
</ul>
在上面的示例中,我们需要通过lower
函数将.KeyName
返回的值传递给它,因为翻译表中的键是小写的。