How to create responsive menus in WordPress
WordPress block themes can create responsive menus with the Navigation block, including a mobile overlay and menu icon. Classic themes usually depend on the theme for the mobile toggle; if it lacks one, use custom development or a menu plugin.
- 01Identify your menu editor
- 02Build a simple menu structure
- 03Turn on the mobile menu
- 04Use the manual route carefully
- 05Test every navigation state
- 06Take the fast route with Superfly Menu
What you need
- Administrator access to WordPress
- A block or classic WordPress theme
- The pages, categories or links you want in the menu
- A phone or browser device preview for testing
Identify your menu editor
Check whether your site uses a block theme or a classic theme. With a block theme, open Appearance > Editor and edit the Navigation block in the header or template part. With a classic theme, use Appearance > Menus when that screen is available. WordPress 6.0 and later generally manage navigation through the Navigation block on block themes, while the classic Menus screen remains mainly for classic and hybrid themes.
The editor you see matters because the responsive controls are not in the same place. A classic menu editor organises links, but the theme normally supplies the hamburger button, mobile layout and front-end behaviour.
Build a simple menu structure
Add the main pages first, then add categories, posts or custom links only where they help visitors. Keep labels short and place related links under a parent item to create submenus. In a classic theme, drag items slightly to the right to make them children; in the Navigation block, use the block controls to create submenu items.
Save the menu or site changes before previewing it. Do not rely on automatically added pages for an important navigation: new top-level pages may appear unexpectedly, and child pages normally need to be arranged manually.
Turn on the mobile menu
In the Navigation block settings, find the overlay or mobile display option and choose Mobile if you want the full menu on desktop but a menu icon on smaller screens. You can choose whether the button uses an icon or text such as “Menu” and “Close”, and you can set submenu items to open on click rather than hover. WordPress documents these controls under the Navigation block’s display and overlay settings.
With a classic theme, look in the Customizer, theme options or header settings for a mobile menu, breakpoint or menu toggle setting. If the theme only outputs a desktop menu, WordPress does not add a responsive hamburger interface automatically. You then need a developer to add the accessible toggle and supporting CSS and JavaScript, or use a plugin.
Use the manual route carefully
The no-plugin route is fine when your block theme already provides the Navigation block overlay, or when your classic theme includes a working mobile menu. You can adjust colours, spacing, typography and some layout settings in the editor or Customizer, and add small visual changes through the site’s additional CSS area.
Do not hide the desktop menu with CSS and assume that creates a mobile menu. A usable mobile navigation needs a visible control, keyboard access, focus handling, submenu behaviour and a way to close the overlay. Hand-built CSS alone cannot provide those interactions, so custom development becomes the drawback of the manual route.
Test every navigation state
Preview the menu at desktop, tablet and phone widths. Tap the menu button, open every submenu, follow a link, close the overlay and rotate the phone. Then test with a keyboard: the menu button should be reachable, its state should be clear, and focus should not disappear behind the open panel.
Check long labels, three-level menus, the logo beside the button, sticky headers and landscape phone widths. A common Friday failure is a hamburger icon that appears but does nothing because a JavaScript optimisation, cookie banner or other plugin is interfering. Disable plugins one at a time in a staging copy to isolate conflicts, then clear caches and retest.
Take the fast route with Superfly Menu
If your theme has no mobile toggle, or you need several layouts and breakpoint controls without writing front-end code, a responsive menu plugin is the quicker option. Superfly Menu provides drag-and-drop menu arrangement, vertical and horizontal layouts, icons, animations, custom links and settings for responsive behaviour.
Install it from Plugins, activate it, select or create the menu you want to display, then configure its layout, colours, toggle button and breakpoints. Preview the result on real phones and check that the plugin is not displaying a second menu alongside the theme’s original navigation.
Let Superfly Menu do it
Drag-and-drop responsive menus with layouts, icons, animations, and breakpoints; choose it for polished navigation without coding.
Sources
- wordpress.org /documentation/article/navigation-block/?utm_source=openai
- learn.wordpress.org /lesson-plan/managing-menus/?utm_source=openai
- wordpress.org /support/topic/navigation-block-overlay-not-working-on-mobil…
- wordpress.org /documentation/article/appearance-menus-screen/?utm_source=o…
Questions
- Can WordPress create a responsive menu without a plugin?
- Yes, a block theme can usually create one with the Navigation block’s mobile overlay settings. Many classic themes also include their own mobile menu controls. If a classic theme only displays a desktop menu, WordPress’s menu editor can organise the links but cannot supply the complete toggle interaction by itself, so you need custom development or a plugin.
- Why does my hamburger menu appear but not open?
- A hamburger button that does nothing is commonly caused by a JavaScript conflict, caching or optimisation, a cookie banner, or another plugin changing the header markup. Test in a staging copy, clear browser and page caches, and disable plugins one at a time. If the problem disappears, restore them individually to identify the conflict before changing the menu itself.
- Should mobile submenus open on hover or click?
- Use click for mobile submenus because touch devices do not have a reliable hover state. The Navigation block lets you choose submenu visibility behaviour and can show an arrow beside items with children. Keep parent items understandable, make the arrow large enough to tap, and test whether tapping the label follows the parent link or opens its submenu.
- Why is Appearance > Menus missing in WordPress?
- The Appearance > Menus screen is not the default navigation editor for block themes. WordPress moved block-theme navigation to the Navigation block in the Site Editor, while the classic Menus screen may still be available for classic or hybrid themes. Open Appearance > Editor and edit the Navigation block in the header or relevant template part instead.