How to Create a WordPress Navigation Menu
A slow, beginner-friendly WordPress guide to create a wordpress navigation menu, defining the relevant WordPress concepts and checking the real public result.
By the end: You will complete and verify create a wordpress navigation menu without relying on a three-step generic checklist.
You will complete and verify create a wordpress navigation menu without relying on a three-step generic checklist.
Key terms before you start
These definitions make the steps easier to follow and help distinguish controls, files and concepts that can look similar at first.
What you need before starting
- Your WordPress /wp-admin/ login
- Permission to use the admin screens named in this tutorial
- A staging/backup plan for site-wide, plugin, theme, code or URL changes
Real-world notes from public discussions
These are tied to public discussions, not invented case studies. Open the source to read the full thread and surrounding replies.
The real beginner problem is often not “create a menu” but “reconnect the existing saved menu to the Navigation block.” Community answers point users back to the Navigation block’s menu selection controls instead of rebuilding links from scratch.
Step-by-step tutorial
Every step is shown below. Work through them in order and use each checkpoint to confirm the result before moving on.
Open the WordPress login address
In your browser enter https://YOURDOMAIN.com/wp-admin/ and sign in.
WordPress Dashboard is private administration; YOURDOMAIN.com must be replaced with the real domain.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Check your role/permissions
Look at the left admin menu and confirm the menu items named in this tutorial are available.
Editors, Administrators and custom roles can have different permissions. Missing controls do not automatically mean WordPress is broken.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Confirm the site uses a block theme
Click Appearance and look for Editor. A block theme exposes the Site Editor through Appearance → Editor.
If Appearance → Editor is absent, the theme may be classic/hybrid or your role may lack permission. Do not switch themes just to follow a tutorial without a migration plan.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Open Appearance → Editor → Navigation
Use the Navigation management area available in current block themes.
If Editor is missing, use the site's existing classic-theme menu controls instead of forcing this path.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Identify existing menus
Do not immediately create another menu. Inspect names/items and which one is used in the Header.
Sites can have multiple menus.
Test logged out, clear the appropriate cache layer, and inspect whether you edited the template/content item actually used by that URL.
Create a menu only when needed
Use the menu options to create a new menu if no suitable menu exists.
Give it a descriptive name.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Add a Page Link
Use the + inserter inside Navigation and select/search a published Page.
Page Link stays tied to a WordPress Page.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Add a Custom Link when destination is not a Page
Use Custom Link and paste the full/relative URL plus label.
Test external URLs and protocols.
Test logged out, clear the appropriate cache layer, and inspect whether you edited the template/content item actually used by that URL.
Reorder items
Use List View/drag or movement controls.
Visual order should match keyboard/DOM order.
Create a submenu deliberately
Nest a link under its parent using List View/Navigation controls.
Do not create huge menus several levels deep without testing touch/keyboard access.
Assign/use the menu in Header
Edit the Header template part and ensure its Navigation block uses the intended menu.
Creating a menu does not guarantee it is displayed.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Test every link logged out
Use private window desktop and phone menu.
This verifies public destination and mobile overlay.
Test logged out, clear the appropriate cache layer, and inspect whether you edited the template/content item actually used by that URL.
Check for collateral changes
Visit at least Home plus one normal Page/Post and any template affected by the change.
Site-wide templates/styles can change many URLs at once.
Use the rollback/backup/staging plan rather than stacking emergency CSS/plugin changes on top of an unknown cause.
Record what was changed
Note the WordPress screen, plugin/theme/template and reason in project notes/version control where applicable.
Future maintenance is easier when site-wide changes are traceable.
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Know whether you are editing one content item, a reusable pattern, a template part, a theme or a plugin before clicking Save.
Concrete examples
Troubleshooting
Your theme, WordPress version, plugins or role can alter available UI. Confirm whether the site uses a block theme and whether your account has permission before changing architecture.
Test logged out, clear the appropriate cache layer, and inspect whether you edited the template/content item actually used by that URL.
Use the rollback/backup/staging plan rather than stacking emergency CSS/plugin changes on top of an unknown cause.
Another maintainer can locate the setting/code.
Continue with these tutorials
Documentation and references
Use these primary and supporting sources to verify current controls, browser behavior and product-specific details.