Docs

Nav Menu

A WordPress menu with dropdowns, mega menus and a mobile menu.

On this page

The Nav Menu widget shows one of your WordPress menus, usually as the main navigation in your header. It handles dropdown submenus and mega menus, marks the current page, and turns into a hamburger button with a mobile menu on smaller screens.

The Northwind Studio header: the logo on the left, the menu Home, Services with a dropdown arrow, About, Journal and Contact in the middle, with Home underlined, and a Book a consultation button on the right
The Nav Menu in the site header. The current page is underlined.

Where the menu comes from

The links come from a menu you manage in WordPress, in Appearance → Menus: add pages, posts, categories or custom links there, drag them into order, and nest them to create dropdowns. Choose which menu the widget shows in Menu. When you change the menu in WordPress, every Nav Menu that shows it updates.

To show a full panel of content instead of a simple dropdown, attach a mega menu template to a menu item. See Mega menus.

Add a Nav Menu

Open your header template in the Theme Builder. Then open Insert in the left panel, find Nav Menu in the Site & theme group (or type "menu" in the search box) and drag it into the header. See Add elements.

The Nav Menu settings with the Menu section open: Menu, Layout, Alignment, Levels, Open submenus on, Highlight section links, Submenu indicator and the Hover effect tiles, with Sliding highlight selected
The Menu section of the Content tab.

Set up the mobile menu

On tablets and phones, the menu turns into a hamburger button by default. Choose when with Show hamburger on, and pick how the menu opens with Mobile menu: a Dropdown under the header, a Panel under the header, an Off-canvas drawer from the side, or Full screen.

The mobile menu shows the same menu as the desktop bar. To show another one, for example a shorter menu or one with extra links for phones, pick it under Mobile menu → Menu.

Panel under the header is the modern, app-style menu: a full-width sheet that hangs from the bottom edge of the header, with airy rows, submenus that open in place with a rotating arrow, and an optional full-width button at the end (Button in the menu). Pair it with Toggle style → Animated lines, whose two lines turn into an X while the menu is open. Give the panel the header's background (Design → Mobile menu → Background) and the header's side padding (Panel padding) so it reads as part of the header.

The header on a phone with the menu open as a full-width dropdown listing Home, Services with an arrow, About, Journal and Contact, and a close button top right
The mobile menu in the Dropdown mode on a phone.

Check it in the Tablet and Mobile views of the editor. See Responsive editing.

Add hover effects

Pick one Hover effect at the end of the Menu section. Each tile shows a small menu with its effect; point at a tile to see it move, then click it. The effect is for the desktop menu, not the mobile menu.

EffectWhat it does
Animated underlineA line draws in under the item and leaves the other way. Line from: Start (draws in from the start, leaves at the end) or Center (grows from the middle). The current page keeps its line. The default.
Flip textThe label rolls up and a copy rolls in from below. Flip by: Word or Letter (each letter a moment after the one before).
Magnetic buttonThe item becomes a pill that leans toward the mouse pointer, and the label leans a little further. Pull sets how far it follows (default 0.3).
Focus itemWhile the pointer or keyboard focus is on one item, the other items fade back. Dimmed opacity (default 0.35).
Sliding highlightOne pill glides from item to item and rests on the current page.
Color onlyOnly the text color changes.

Set the colors in Design → Main menu: Text color on the Hover and Active tabs, Underline color and Underline thickness for the underline, and Background on the Hover tab for the pill of Magnetic button and Sliding highlight (a light tint of your primary color by default). Visitors who turn on reduced motion see the same states without movement, and Flip text becomes a color change.

Add icons and descriptions

Menu items can have a small icon before the label and a short description under it, so a dropdown says where each link goes.

A Company dropdown in two columns: About with Our story, people, and values; Methodology with Our proven framework; Careers with Build with us; Contact with Start the conversation
A dropdown in two columns, with descriptions.
  1. Open the menu

    Go to Appearance → Menus and select the menu your Nav Menu shows.

  2. Add an icon

    Expand a menu item and click Choose icon under Icon. Type to search, for example users, and click an icon. The list at the top switches between icon libraries: Lucide, Font Awesome, Phosphor and the others, and your own sets. Remove takes the icon off again.

    To use your own icon, click Upload SVG and choose one or more .svg files. They are added to a custom icon set called Menu icons; a single file is picked straight away. Single-color icons work best: like every icon, they take the menu's colors. Uploading is available to administrators. See Custom icons.

  3. Add a description

    Type one short line in the item's Description field, for example Our story, people, and values. If the field is not there, click Show the Description field under the icon, or turn on Description in Screen Options at the top of the page.

  4. Save the menu

    Click Save Menu, then reload the editor to see the change.

Icons show wherever the item appears. Descriptions show under the label in dropdowns and in the mobile menu; items in the menu bar keep just their label.

To lay out dropdowns in columns, like a small mega menu, set Dropdown columns to 2, 3 or 4 in the Menu section. Style icons and descriptions in Design → Dropdown → Icons and descriptions: Icon size, Icon color, Icon background (puts each icon on a small tile), Description typography and Description color. They also apply to the mobile menu. To show a plain menu with the same items, for example in the footer, turn off Icons or Descriptions on that Nav Menu.

Build a one-page menu

If your menu links to sections of the same page (such as #services or #contact), keep Highlight #section links while scrolling on. The link of the section in view is marked as active while the visitor scrolls. Give each section a matching Anchor ID in Behaviour → Anchor & classes.

Content tab settings

Content tab · Menu
SettingWhat it does
MenuWhich WordPress menu to show. Empty: the first menu with items. Manage menus in Appearance → Menus.
LayoutHorizontal or Vertical. Default: Horizontal.
AlignmentStart, Center, End or Stretch. Can differ per device.
LevelsHow many levels of submenus to show (0–6). 0 shows every level.
Open submenus onHover and click or Click only. Default: Hover and click.
Highlight #section links while scrollingOne-page menus: links to sections of the current page are marked active as each section scrolls into view. On by default.
Submenu indicatorThe icon next to items with a submenu. Default: a chevron.
Dropdown columns1 to 4. More than one lays out dropdowns in columns. Default: 1. See Add icons and descriptions.
IconsShows the icons chosen for menu items in Appearance → Menus, before the label. On by default.
DescriptionsShows the descriptions of menu items under the label, in dropdowns and the mobile menu. On by default.
Hover effectHow desktop menu items react to the pointer: Animated underline (default), Flip text, Magnetic button, Focus item, Sliding highlight or Color only. The chosen effect may add one setting: Line from, Flip by, Pull or Dimmed opacity. See Add hover effects.
Content tab · Mobile menu
SettingWhat it does
Show hamburger onTablet and mobile, Mobile only, All devices or Never. Default: Tablet and mobile.
MenuThe menu shown in the mobile menu. Default: Same as the desktop menu. Not shown when Show hamburger on is Never.
Mobile menuDropdown, Panel under the header, Off-canvas drawer or Full screen. Default: Dropdown.
Drawer sideLeft or Right. Default: Right. Shown for Off-canvas drawer.
Full-width dropdownStretches the dropdown to the width of the screen. On by default. Shown for Dropdown.
Toggle styleIcons (the two icons below) or Animated lines (two lines that turn into an X). Default: Icons.
Toggle iconThe hamburger icon. Default: menu. Shown for Icons.
Close iconThe icon while the menu is open. Default: x. Shown for Icons.
Toggle labelThe button's name. Default: Menu.
Show labelShows the label next to the icon. When off, the label is only read by screen readers.
Toggle alignmentStart, Center or End. Can differ per device.
Button in the menuText of a full-width button at the end of the mobile menu, such as "Get started". Empty: no button.
Button link and Button styleWhere the button goes, and Primary, Secondary or Outline from your Design System.

Design tab settings

Design tab
SectionSettings
Main menuTypography. Text color and Background on the Normal, Hover and Active tabs (active is the current page and its parent items), with Underline color on hover and active, and the hover Background also colors the pill of the Magnetic button and Sliding highlight effects. Underline thickness, Item padding, Space between items, Item radius, Icon size, Indicator size, Indicator spacing.
DropdownTypography. Text color and Background or Item background on the Normal, Hover and Active tabs. Min width, Distance (space between the menu and its dropdowns), Inner padding, Item padding, Item radius, Divider color, Border radius, Border, Shadow (these three also style mega menu panels). Icons and descriptions: Icon size, Icon color, Icon background, Description typography, Description color (also used by the mobile menu).
Hamburger toggleIcon size, Line thickness (animated lines), Label typography (when the label is shown), Color and Background (with Normal and Hover tabs), Padding, Border radius, Border.
Mobile menuTypography, Background, Text color (Normal, Hover and Active tabs, with Item background on hover), Item padding, Divider color, Alignment, Distance from toggle (dropdown), Drawer width and Overlay color (drawer), Panel padding, Shadow, Close button color and Close button size (drawer and full screen), Button text color and Button background (when the menu has a button).

The Design tab also has the sections every element shares: Spacing & position, Background & border and Mask. See Spacing, size & position.

Behaviour tab

The Behaviour tab has the settings every element shares: anchor and classes, entrance animations, motion effects, visibility per device, display conditions and interactions. See Visibility.

Tips

  • The menu works with the keyboard: Tab moves between the links and the submenu arrow buttons, which open with Enter or Space.
  • To make the header stay at the top while visitors scroll, set it in the header template's settings. See Headers & footers.
  • For a second, smaller menu (such as legal links in the footer), create another menu in Appearance → Menus and add a second Nav Menu.