Every WordPress theme comes pre-set with a default menu that is, usually, based on how you structure your pages. Some have drop-downs to show secondary pages (children) but some only show top-level pages.
With the advent of WordPress 3, you can now create a custom menu where you add or delete pages from the primary navigation at will. Or you can create a custom menu that you use somewhere else. Here’s how.
There are four steps:
- Create the new menu (give it a name)
- Add internal pages/external links
- Arrange the links however you like
- Use the new menu somewhere
But before you can create a menu, you must have content! (And the pages and posts must be published, not in draft form.)
1. Create the new menu
- Go to Appearance -> Menus [path is yourWPsite.com/WPsubdirectory (if it exists)/wp-admin/nav-menus.php]
- Give the new menu a name. Don’t sweat the name, you can rename it later.
- Click “create menu”
2. Add internal pages/external links
Once you have created the menu, you can add links.
The left hand portions of this dashboard page should have changed from “grayed out” to “active black.” You can add
- Custom links (any link on the web)
- Posts
- Pages
- Category pages
- Tag pages
If you do not see all of these options, click “Screen Options” in the upper right hand corner of the Dashboard screen. Then enable them by ticking the select boxes.

Adding custom links
When you paste the URL, remember to include the “http://” or it won’t work! Likewise, in the “label” field you will type whatever you want the hypertext link to read. Here’s an example:

As soon as you click “Add to Menu”, this link will appear in your new menu window.

Adding posts
WordPress defaults to showing you the most recent posts but you can view all or search. Select any post that you want in the menu and click “Add to Menu”. Or skip this section.
Adding pages
Just as with posts, WordPress defaults to showing you the most recent pages but you can view all or search. If you are working on an alternative primary navigation menu, you will probably be making your selections from this content type. Tick off your selections, then click “Add to Menu.”
Adding a category or tag page
WordPress creates an archive page for categories and tags. Use either of these tools to add specific blog content types to the menu. Remember to click “Add to Menu” after you’ve made your selection.
3. Arrange the links however you like
Once you have all of the links that you want in your menu, now’s the time to arrange them. You’ll do this by click-and-drag. Suggestion: if there is no obvious order, such as sequential steps, consider putting the items in alphabetical order.
To create parent-child relationships, just drag. A nudge to the right makes a link the child of the link above it.

Don’t like the default link title? Click the “down arrow” to reveal an edit window. That’s also how you remove a link from the custom menu.

Finished? Click “Save Menu.”
4. Use the new menu somewhere
If your theme allows it (and most modern ones do), you can replace the default primary navigation created by the theme with this new menu you’ve created.

Some themes support more than one custom menu. You can see themes that support custom menus at WordPress.com or search for themes at WordPress.org.
Learn more with this step-by-step from WordPress.com and from the WordPress codex.
2 replies on “How To Create Custom Menus In WordPress”
[…] Appearance -> Menus -> Custom Menus […]
[…] Appearance -> Menus -> Custom Menus […]