Skip to content

Hugo Menu Editor

The menu editor lets you add, edit, reorder, and delete Hugo navigation items directly from scribe. Changes are written to hugo.toml via GitHub — only the [[menus.*]] blocks are modified, everything else is preserved.

Your Hugo templates must render the menu. Add this to your nav partial (layouts/partials/nav.html or equivalent):

<nav>
{{ range .Site.Menus.main }}
<a href="{{ .URL }}">{{ .Name }}</a>
{{ if .HasChildren }}
<ul>
{{ range .Children }}
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
</ul>
{{ end }}
{{ end }}
</nav>
  1. Open a Hugo repo in scribe
  2. Click Navigasjon in the sidebar (Hugo repos only)
  3. Menu groups appear as tabs (main, footer, etc.)
  4. Click + legg til menypunkt to add a new item
  5. Use the URL dropdown to search for pages in your repo
  6. Click ↑ ↓ to reorder items
  7. Click + legg til undermeny to add child items
  8. Click Publiser endringer to commit to GitHub

Click + ny meny to create a new menu group (e.g. footer, social). The group name must match what your Hugo template reads:

{{ range .Site.Menus.footer }}
<a href="{{ .URL }}">{{ .Name }}</a>
{{ end }}

Hugo submenus use the parent field. When you add a child item, set the parent’s Identifier field (or it defaults to the parent’s name).