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 3.0 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 :

519 Responses to “Admin Menu Editor For WordPress”

  1. Jasnick says:

    Good evening – I’m using this plugin (thank you!) to restrict my Editor to just what he needs – how do I set it so he opens in the Dashboard and not his profile page? Thanks

  2. Jānis Elsts says:

    As far as I know, opening the Dashboard is usually the default. If Editor sees a different page after logging it, that probably means you have a plugin or theme that redirects them to that page. In this case, you’ll need to change the settings of that plugin/theme.

  3. Jasnick says:

    Thank you – yes I have a couple of plugins that do some of the same things as AME so I will investigate that. Thanks for very prompt reply.

  4. Jasnick says:

    Have spent all morning on this – have decided to live with the Profile page but am missing one
    menu item. Using plugin Enhanced Media Library Pro which add categories to media files. This adds a file to media Library in the Menu: Media Categories. The Editor needs access to this but it is not showing in his Menu, only Library and Add New. I have tried to add capabilities to Editor in User Role Editor: edit_tags and edit_media_categories but that doesn’t work. Can yousuggest anything? Thanks

  5. Jānis Elsts says:

    Adding capabilities sounds like the correct solution. You just need to find the right capabilities to add. Take a look at the “required capability” field of that menu item (in the menu editor) – what capability is listed there? Add that capability to the Editor role.

  6. Jasnick says:

    All of a sudden everything worked as it should with AME. I suspect a caching problem as I was trying all sorts of plugins and there may have been some conflicts. Thank you!

  7. Michael says:

    when migrating a whole site to another URL – all Menu options set – got lost. How could I mitrate all settings, so that all OLD SITE MENU STRUKTUREN are also available AT THE NEW SITE (historically this worked – suddenly since about 1-3 weeks no more)

  8. Jānis Elsts says:

    Use a migration tool that knows how to handle serialized PHP data.

    Most likely, the problem is that the current migration process blindly replaces all instances of the old URL in the database with the new one, without taking into account the fact that to change a serialized PHP string you must also update the stored string length. If something edits the URL in AME settings without also editing the length, it will corrupt your menu settings.

    The solution is to use a better search & replace tool. Here’s one option:
    https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

  9. Benbodhi says:

    Hey,

    Awesome plugin!
    I have a little admin menu plugin in the repo too, Admin Toolbar Menus.
    I’m currently working on some new features and would love your insight. I’m adding a new meta box on the left of the menus screen that list Admin Pages to choose from, just like the standard pages or posts section that lists all items to choose from. I have built the box already and can put my own links in there, but I need the list items to iterate through the available admin menu items.
    I notice your plugin would do this at some point but can’t seem to figure it out. I just need to go through the current admin menu items and display them in this list to choose from.
    I hope this makes sense and you can point me in the right direction. There is not a lot of documentation out there related to the admin menus.
    Thanks in advance!

  10. Jānis Elsts says:

    WordPress stores admin menu items in two global variables: $menu and $submenu. I don’t think their contents are documented anywhere, but try dumping them with something like print_r() – the basic structure is fairly easy to understand.

    Fair warning: There’s a lot of edge cases in the part of WP core that deals with the admin menu. For example, menu URLs are much more complex to generate than you might expect.

  11. Benbodhi says:

    Hey, thanks for the response… I have managed to do exactly that already and can dump the entire menu on the page, inside the new meta box. I am having trouble making the meta box contain all the items just like the standard pages one – converting these results to user friendly check boxes with the select all button below and the sorter above.
    I hope this makes sense and you can help me out, it’s been sending me in circles for quite some time now.

  12. Jānis Elsts says:

    Actually, I’ve never tried to reproduce this metabox, so I’m not sure I’ll be able to help you with that.

    At first glance, the overall markup looks pretty straightforward – the page list it’s just an unordered list of “<label><input …> Page name</label>” – but the CSS is specific to the menu customizer. Maybe you could make your plugin output the same HTML structure and then enqueue nav-menus.css and edit.css? As for “Select all”, you’ll probably have to write the click handler yourself.

  13. Ulf says:

    Dear developer,
    I admire the AME very much and use it happily. What I would need is a possibility to move items of the menu from the first level to the second when they have a second level for themselves. Now, this is not possible, I have to leave for example plugin menu items with sublevel items in the first menu level – what I do not like… 🙂
    Thanks for an extension or update in this spirit.
    And thanks again for the fine plugin!!
    Best wishes
    Ulf

  14. Jānis Elsts says:

    That’s a fairly common feature request. Unfortunately, it’s currently not possible because WordPress doesn’t support multiple submenu levels in the admin menu.

    Perhaps it could be implemented in the future, but it would be tricky because the plugin would have to override a bunch of WordPress core scripts and styles.

  15. ray junior says:

    hi there! thanks for this plugin, i use it on every website. couple questions:
    1. on the wordpress.org page it says there’s a pro version and provides a link, but the link is not correct. is there a pro version? if so i’d be happy to pay for it
    2. Would you consider creating a 1 click button that automatically organizes the entire menu alphabetically (as well as the sub menus)? this is what i do every single time – and i’d pay for a pro version for sure if it had the ability to allow me to do this with one click

    thanks

  16. Jānis Elsts says:

    Thank you for letting me know about the broken link! It looks like I forgot to update the URL when I reconfigured the redirects on this site. The correct link is:
    http://adminmenueditor.com/

    Would you consider creating a 1 click button that automatically organizes the entire menu alphabetically (as well as the sub menus)?

    Sorting the entire menu would have some unexpected side-effects. As you may already know, clicking a top level menu like “Posts” opens the first submenu item of that menu: in this case, “All Posts”. If you sort the submenu alphabetically then “Add New” will become the first item, so clicking on “Posts” will bring you to the “Add New Post” screen.

    I’m reluctant to add a “sort everything” feature because surprises like that would probably confuse users.

  17. […] Source: Admin Menu Editor For WordPress | W-Shadow.com […]

  18. Vitor Melo says:

    Hi, I have a idea to change of theme for plugin, see the images:

    http://imgur.com/6PNdEvy

    http://imgur.com/RoYIn5U

    CSS Code

    .ws_container {
    margin-bottom: 3px;
    background-color: #f7f7f7;
    border: 1px solid #ccc;
    border-radius: 3px;
    color: #555
    }

    .ws_container:hover {
    background: #fafafa;
    border-color: #999;
    color: #23282d;
    }

    #ws_menu_editor .ws_active {
    background-color: #0085ba;
    border: 1px solid #0073aa;
    text-shadow: 0 -1px 1px #006799, 1px 0 1px #006799, 0 1px 1px #006799, -1px 0 1px #006799;
    color: #fff;
    }

  19. Dark_Engine says:

    AME is a mighty good plugin – it tidies up the sidebar extraordinarily well and make life a lot easier to navigate.

    Well done to all those involved.

Leave a Reply