1
0
Fork 0
hugo/docs/content/en/methods/menu/ByName.md

1.3 KiB

title description categories keywords params
ByName Returns the given menu with its entries sorted by name.
functions_and_methods
returnType signatures
navigation.Menu
MENU.ByName

The Sort method returns the given menu with its entries sorted by name.

Consider this menu definition:

{{< code-toggle file=hugo >}} menus.main name = 'Services' pageRef = '/services' weight = 10

menus.main name = 'About' pageRef = '/about' weight = 20

menus.main name = 'Contact' pageRef = '/contact' weight = 30 {{< /code-toggle >}}

To sort the entries by name:

<ul>
  {{ range .Site.Menus.main.ByName }}
    <li><a href="{{ .URL }}">{{ .Name }}</a></li>
  {{ end }}
</ul>

Hugo renders this to:

<ul>
  <li><a href="/about/">About</a></li>
  <li><a href="/contact">Contact</a></li>
  <li><a href="/services/">Services</a></li>
</ul>

You can also sort menu entries using the sort function. For example, to sort by name in descending order:

<ul>
  {{ range sort .Site.Menus.main "Name" "desc" }}
    <li><a href="{{ .URL }}">{{ .Name }}</a></li>
  {{ end }}
</ul>

When using the sort function with menu entries, specify any of the following keys: Identifier, Name, Parent, Post, Pre, Title, URL, or Weight.