This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Menus Plus+


Create multiple customized menus with pages, posts, categories, and URLS. For CMS applications of WordPress, organizing a menu list is a pain; this makes it easier. Drag and drop them until you like what you see. No hacks or finicky ‘Page Order’ methods need apply.


  1. Configure your lists from the Menus Plus+ option page at ‘Appearance > Menus Plus+’
  2. Create some Menus Plus+ widgets via ‘Appearance > Widgets’
  3. Or use the template tag:
    1. Place <?php menusplus(); ?> in your template … wherever you want it.
    2. If you have multiple lists, use the <?php menusplus(#); ?> tag provided on the configuration page.
  4. Or use the shortcode:
    1. [menusplus menu="#"]


  1. Combine pages, posts, categories, and URLs together in unprecedented harmony.
  2. Use a Widget, template tag, or chortcode. Your choice.
  3. Create ‘hyrbrid’ submenus; mixing an matching for the perfect dropdown.
  4. Choose to display children on a per-item basis
  5. Create as many lists as you want!
  6. Dedicated ‘Home Page’ option
  7. Optional class assignment for URLs/Posts/Hybrids/Home
  8. Supports ‘My Page Order’ and ‘My Category Order’
  9. Configure the depth of category and page children
  10. Fun to drag and drop!


For any issues you’re having with Menus Plus+, or if you’d like to suggest a feature, visit the Plugin Homepage.


  • A view from the admin interface.
  • Add a category to the list.
  • Editing a hybrid list.
  • Adding some Menus Plus+ widgets.


  1. Upload the entire /menus-plus/ folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress


How do these ‘Hybrid’ lists work?

Essentially, you are embedding another Menus Plus+ list within your current list. This allows you to break the regular WordPress hierarchy and make submenus out of anything you want. Editing the hybrid lists take you to another menu list; hybrid list items are orange so you don’t get confused.

Hyrbid lists are only available to the parent list. Therefore you cannot use them as individual widgets. Sorry! It’s just protect you from endless loops!

What kinds of classes and ids are applied to the menu?

Only the normal classes and ids generated by WordPress (eg. current-page-item). For external URLs, you may assign an optional class to help styling. For the most part, the template tag will spit out a simple list without a parent container or style. Customize as you wish.

Will it do page and category children?

You know it. Just change the “Children” option accordingly. At this time you cannot do highly customized orders of children, but you can sort them in a number of ways (date, id, name, etc …).

How do I return my separate lists?

You can either create a widget for that specific list through ‘Appearance > Widgets’, template tag, or shortcode.

When you edit a list, a little box beneath gives you the correct template tag for showing that particular list. For example, <?php menusplus(3); ?>. If you leave out the number, the earliest list is returned. Same thing goes for the shortcode, [menusplus menu="3"].

Note = : If you use the shortcode, it will wrap the list in `

    ` tags. I can change this if people dissent.
Will the widget necessarily display the widgets title?

The widget will display a title only if you supply one. If the list is going to be your main navigation, and you don’t want the list title to be show, simply leave it blank.

What about the URL for the ‘top’ hybrid list item?

When you create/edit a hybrid list you have the option of supplying a URL. This will make the top, or parent list item, a functioning link as well. If you leave it blank, the item will still be a link (with a <a> tag), but it will have a blank href parameter. This ensures that your beautifully customized CSS drop-downs don’t soil themselves.


There are no reviews for this plugin.

Contributors & Developers

“Menus Plus+” is open source software. The following people have contributed to this plugin.


Translate “Menus Plus+” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Fixed a bug where child pages as top menu items were quote wonky. Changed the page logic of the template tag.


  • Better IIS support for hybrid/home/url
  • NONCE integration (this should have happened sooner)
  • Better validation and DB santiation


  • Fixes another bug!


  • Fixes a bug!


  • Added “title” attribute support
  • Better database updgrade process.
  • Sweet loading graphics
  • Streamlined $_POST data handling
  • Better support for widget classing. Gave it a <ul> wrapper.


  • Fixed major bug in table create method


  • Added depth parameter to category and page items
  • Added shortcode [menusplus menu="#"]
  • Added current-cat classing to submenus


  • Even better URL validation with filter_var()


  • Give hybrid lists URL options; if you want it to be an actual link.


  • Introduced ‘Hybrid’ lists. These are customizable submenus that can be assembled with Home/Page/Cat/Post/URL.
  • Better URL validation.
  • Some new interface buttons.


  • Fixed some bugs regarding page children sorting
  • Added support for ‘My Page Order’ and ‘My Category Order’
  • Added French language support … Thank you, Denis Rebaud!


  • Add posts to the menu
  • Dedicated ‘Home Page’ option now available
  • Configurable target parameter for external URLs


  • Now available as a widget.


  • Now, you can create MULTIPLE lists! New additions to the interface, but nothing you can’t handle. Call the lists like this <?php menusplus(#); ?>.


  • Address some issues with database insert/update functions on stricter MySQL setups.


  • Fixed a bug that puts item at the first position after editing.


  • New interface, with Lightbox add/edit dialogs.
  • Per list item children handling, with various children sorting options.


  • Initial release.