HUGO
News Docs Themes Community GitHub

Identifier

Returns the identifier property of the given menu entry.

Syntax

MENUENTRY.Identifier

Returns

string

The Identifier method returns the identifier property of the menu entry. If you define the menu entry automatically, it returns the page’s section.

menus:
  main:
  - identifier: about
    name: About
    pageRef: /about
    weight: 10
  - identifier: contact
    name: Contact
    pageRef: /contact
    weight: 20
[menus]
  [[menus.main]]
    identifier = 'about'
    name = 'About'
    pageRef = '/about'
    weight = 10
  [[menus.main]]
    identifier = 'contact'
    name = 'Contact'
    pageRef = '/contact'
    weight = 20
{
   "menus": {
      "main": [
         {
            "identifier": "about",
            "name": "About",
            "pageRef": "/about",
            "weight": 10
         },
         {
            "identifier": "contact",
            "name": "Contact",
            "pageRef": "/contact",
            "weight": 20
         }
      ]
   }
}

This example uses the Identifier method when querying the translation table on a multilingual site, falling back the name property if a matching key in the translation table does not exist:

<ul>
  {{ range .Site.Menus.main }}
    <li><a href="{{ .URL }}">{{ or (T .Identifier) .Name }}</a></li>
  {{ end }}
</ul>

In the menu definition above, note that the identifier property is only required when two or more menu entries have the same name, or when localizing the name using translation tables.