For those of you that are too busy blogging (or too busy with life) to be bothered with WordPress announcements, sit up and pay attention: The Custom Menu feature has arrived at WordPress.com. This has been something I have wanted for a very long time, and all that waiting has finally paid off. I’ve been using drop down navigation in my web designs since the early 2000′s and it was quite frustrating to not have that ability built right into WordPress. When WordPress was originally introduced and used pretty much exclusively as a blogging platform, there was little need for complex navigation. However as the web moved forward, and WordPress continued to add new features, people started to look at WordPress as more than just a blogging platform. Because of its ease of use, and continuous development – not to mention being Open Source and free – people started wanting to use it more as a content management platform and for general websites (with a little blogging on the side).
For those with self-hosted WordPress blogs, there has been a good number of themes with drop down navigation, and if you had a little knowledge, there were several menu system scripts that you could incorporate into the themes you were using. At WordPress.COM though, we can’t do that so we had to pace back and forth waiting for staff to bring it to us.
Custom Menus with Top Navigation
Currently not all WordPress.COM themes with top navigation support custom menus, but all widget-ready themes (all but Monotone) support custom menus via the custom menu widget. Say goodbye to the venerable old pages widget. Currently the number of themes that support custom menus in the top navigation is limited, but the list is growing. At the time I’m writing this post, the following themes support top navigation custom menus: Twenty Ten, Structure, Vostok, Bueno, Enterprise, Notepad, Paperpunch, MistyLook, Under the Influence, Vigilance, Greyzed, Wu Wei, Blix, Cutline, Freshy, Contempt, Ambiru, Digg3 [Update: Koi and Modularity Lite added]. You can check the WordPress custom menu support page from time to time to watch the progress.
Since WordPress now has the Custom Menu support page up and running (link above), I’m not going to cover the general operation. It will get you started quickly.
Custom Menu Possibilities
So, what can you do with this new feature? A considerable amount actually. For one thing, we used to have to rely on a “trick” to be able to have a tab in the top navigation go to anything other than internal static pages, but the trick did not work in all themes, and in some themes, it worked, but the tab would be misaligned or distorted. With the new custom menu feature, you can easily add tabs that link to external sites such as your own website or perhaps to an off-site forum that you have created.
Many people would like to be able to link to some or all of their categories from the top navigation tabs. You can do that now. You can even create a “Categories” tab and then put all your categories underneath that tab and they will appear under that tab as a dropdown menu. All you do is create a static page called categories and then add the categories as children under that static page. The same goes for tags. Do you have some particularly popular or important posts you would like to have in the top navigation? You can do that too. You can mix and match as well and have external links, internal static pages, categories, tags and popular posts in the top navigation together. At right (click for larger view), you see all the available sections (collaped). If you go to your custom menu page and don’t see all of these, and want to include some of those items, then click on the “screen options” tab at the top right of the window and select them. You can also deselect any that you are not intending to use as well to keep things less cluttered, or you can click on the right end of the title bar to collapse them as in the above image.
Arranging menus in the order you wanted them used to be somewhat of a pain as well. You had to set the “order” in the attributes section of the page editor to get them in order. If you later wanted to change that order, you had to edit the pages and change the order number. Now, you order pages from within the custom menu section of the dashboard with drag and drop ease. Want to make a page a child of another page so it appears on a dropdown from the parent? Simply drag the child under the parent and a little to the right and it becomes a child an shows on the drop down.
Custom Menu Widget
For those themes that do not have top navigation, or for those that do not yet support custom menus on the top navigation, WordPress has not forgotten you. The custom menu widget can be used and offers all the same basic features and operation as with top navigation. And remember, we can all use multiple custom menu widgets, so you could use one for tags, and one for categories, and one to highlight important posts, and one for… well, you get the idea.
A word of warning though: Limit the custom menu widget to about three sub-levels because each level expands to the right, and you don’t want your visitors to have to scroll horizontally just to get to a fourth or fifth level. I always try to limit things to two or three levels if possible.
Using Custom Menu Widget and Custom Top Navigation Menu
And don’t think that you have to limit yourself to using one or the other. Why not create your own custom categories widget that will have drop downs for subcategories and keep the top navigation for pages and other things? At right is a screen cap of the sample menu I created above showing what will appear in the custom menu widget and how the child categories will expand out. Now granted, it isn’t the most aesthetically pleasing implementation I’ve seen, but if you find this issue with your custom menu widget, just let staff know so that they can give it some lovin’. Hopefully they will give them some lovin’, this looks a little lame to tell the truth. Click on the image for a larger view to see what I’m sayin’.
Perhaps you feel your categories are the most important and need to be in the top navigation, which is leaving precious little room for your pages. Not a problem, create a Custom Menu with your categories and assign it to the top navigation and then create one for your pages and assign that to the custom menu widget.
I’ve only covered a few of the possible uses of the custom menu feature here, but I think you can see that it has a lot of potential uses. Is the implementation of this feature perfect? No, all you have to do is look at the expanded drop down on the menu widget above to see that, but that is simply a matter of a little Theme Team tweaking (say that three times fast) of the CSS to get them looking better. It all just takes a little time and from what the theme team has been doing since they first showed up on scene, I think they are up to it.