Admin Menu Editor For WordPress

Admin Menu Editor is a WordPress plugin that will let you manually edit the Dashboard menu. You can reorder the menus, show/hide specific items, change access rights, and more.

Features

  • Sort menu items any way you want by simple drag & drop.
  • Move a menu item to a different submenu via cut & paste.
  • Edit any existing menu – change the title, access rights, menu icon and so on. Note that in the free version you can’t relax menu permissions – i.e. give access rights to a role that originally didn’t have them – but you can change them to be more restrictive.
  • Hide/show any menu or menu item. A hidden menu is invisible to all users, including administrators.
  • Create custom menus that point to any part of the Dashboard. For example, you could create a new menu leading directly to the “Pending comments” page.

Here’s a screenshot :

Admin Menu Editor screenshot

This plugin also has a Pro version that offers a bunch of extra features.

Download

admin-menu-editor.zip

The latest version of the plugin is always available on WordPress.org.

Requirements :

  • WordPress 4.1 or later
  • PHP 5.2 or later

Known Issues

The basic idea for the plugin was suggested by several commenters way back in October. However, the internal menu system that WordPress uses is obscure and unsuitable for direct manipulation, so I spent quite a while inventing workarounds. And even after a few weeks of pondering, there are some things I haven’t quite fixed.

  • If you delete any of the default menus they will reappear after saving. This is not a bug, it’s a feature 😉
  • As I mentioned before, the access rights required for using a particular menu item can’t be lowered, but can be made more strict. This has been fixed in the Pro version.
  • Plugin menus that are moved to a different submenu will not work unless you put the full page URL in the “URL” field. This is because WP “ties” the menu item to it’s parent menu and won’t recognize it in a different submenu.
Related posts :

556 Responses to “Admin Menu Editor For WordPress”

  1. Hannes says:

    ups – the duplicate qTranslate buttons reappeared. But as they all work I don’t mind (:

  2. Steve says:

    White Shadow,

    I want to thank you for creating this plugin! It’s just what I was looking for. It’s working perfectly so far. Well designed UI as well.

    I’m excited to watch Admin Menu Editor evolve as you add functionality.

    Thank you again,

    Steve

  3. Steve says:

    I too would love to see the ability to save custom menu configurations for use in other blogs or within the same site. This would save a lot of time and effort.

    Any thoughts on adding functionality for menu link color and icon mods?

  4. White Shadow says:

    You can already change the icons for top-level menus (i.e. the “Icon URL” field), though you’d have to manually upload the right icons to wp-admin/images/ for that to work. Changing colors would require a custom stylesheet. Hmm.

    Eh, so that’s another item on my huge idea list. The suggestions wouldn’t be too hard to implement, but there’s so much other stuff I could/should work on that I can’t say when/if I’ll get to updating plugin.

  5. Jonny says:

    Hi there

    Great work on the plugin!!! but after upgrading to WP 2.7.1 it’s stopped working!! I’m now getting a blank screen when I try to activate the plugin, with the error

    “PHP Fatal error: Cannot use object of type stdClass as array in /****/*******/public_html/wp-content/plugins/menu-editor/menu-editor.php on line 395”

    I noticed in the comments that you’ve released version 0.1.2 which fixes this, but the download link still seems to be for 0.1.1?!?

    Any help would be greatly appreciated!!

  6. White Shadow says:

    Hmm, I see. Apparently this problem is caused by a conflict with Simple Tags. It has the same bug as this plugin had prior to 0.1.2 and it happens to define the buggy function before Admin Menu Editor can create the correct one. I’ve uploaded a new version (0.1.3) that should fix this issue.

  7. Jonny says:

    White Shadow

    Thanks for getting back so quickly. I disabled all my other plugins and installed the new 0.1.3 version but still getting the blank screen once it’s activated!!!

  8. White Shadow says:

    Try this : manually delete this plugin and reinstall it anew. Maybe there’s an old file somewhere that creates problems.

  9. Jonny says:

    Nope still no luck unfortunately

  10. White Shadow says:

    Well, are you still getting the same error message (which should be impossible as there is no line 395 in that file anymore)?

  11. Jonny says:

    The error is now on line 380 as follows:

    Cannot use object of type stdClass as array in /****/*******/public_html/wp-content/plugins/menu-editor/menu-editor-core.php on line 380

  12. White Shadow says:

    I’m out of ideas for the time being.

  13. Michelle says:

    Hi,

    I’ve just installed WP 2.7.1 and don’t have any other plugins installed yet. When I try to activate Admin Menu Editor v 0.1.3 I get this “fatal error”:

    Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or ‘}’ in /homepages/18/d90242274/htdocs/themetest/wp-content/plugins/menu-editor/menu-editor-core.php on line 13

    Any ideas? thank you so much! 🙂

    Michelle

  14. White Shadow says:

    You probably have an old version of PHP. You will need at least PHP 5 to use this plugin.

  15. Michelle says:

    I’m using PHP 5, hosted on 1and1.

    I am running two different WP sites in this database, however, using different – what’s the opposite of extension? pretension? lol – different pre-something-or-others for the table names: wp_tt_ and wp_zz_. Would that make any difference?

    Thanks again for your help!

    Michelle

  16. White Shadow says:

    It’s called the “prefix”, and that shouldn’t make a difference.

    The error is on a line that declares a protected class variable. Protected variables were introduced in PHP 5. If they don’t work I can only conclude that you don’t in fact have PHP 5 😛

  17. Michelle says:

    I bow to you; I am an idiot. Whatever brand of dyslexia I have had me reading “PHP 5” and thinking “MySQL 5”. I have upgraded to PHP 5 and all now works perfectly.

    Apologies for the stupid user error and thank you a hundred times for your patience. And for coming up with the word “prefix”. Sheesh. I am so glad yesterday is over. 🙂

  18. Erick says:

    I like your plugin. It installed and functions perfectly except for the moving links issue. Someone mentioned it on the wordpress.org/support page.

    side note: Is it possible to be able to select the dashboard modules specifically for a user level? It seems that what ever is seen on my dashboard is also seen on all users.

  19. White Shadow says:

    User levels are obsolete and wouldn’t work this way, but you could use user capabilities. For example, if you put “edit_plugins” in the “Access level” field for a menu item, only user with that capability will be able to see/access that menu.

Leave a Reply