Menu Humility: A Plugin to Put Plugins in Their Place

menu-humility

Giving a plugin a top level admin menu between Dashboard and Posts is somewhat frowned upon among WordPress plugin developers. Although the Administration Menus section of the WordPress codex doesn’t outright forbid top level menus above Posts, plugin authors are strongly encouraged to consider placing their plugin’s menu underneath an existing WordPress top-level menu.

Nevertheless, many plugins assume a higher level of importance by placing their admin menus above WordPress’ core publishing features such as Posts, Comments, and Media. Jetpack is a prime example. As useful as the plugin is, its settings menu is not something that most users need to access more often than posts or comments.

That’s why WordPress lead developer Mark Jaquith created Menu Humility, a plugin that reassigns the menu location for errant menu items. For example, if you use it on a site with Jetpack installed, it will put its admin menu at the very bottom below Settings.

Menu Humility is not a new plugin. In fact, it’s three years old – ancient in WordPress years. After testing the plugin today, I found that it’s still effective at stripping plugins of their assumed preeminence in the admin.

The bottom line is that most plugins don’t require top billing. If you feel that a top level menu item constitutes a plugin getting too big for its britches, then install the Menu Humility plugin to bring it back down to its place.

9

9 responses to “Menu Humility: A Plugin to Put Plugins in Their Place”

  1. There’s a lot of plugins that just shouldn’t be top-level items at all. Recently BWP Minify moved out of Settings to its own item. That’s totally unecessary, a minification plugin doesn’t deserve top billing. I’m likely only ever going to use it once anyway.

  2. I don’t care what anyone tells me, I get nervous about using a plugin on WP 3.9.2 (soon to be 4.x) when the author has stated its only tested it up to WP 3.8.3. My view is, if the author is not keeping it updated and states it has not tested it with my WP version ~ I use it and it breaks my site ~ I have nobody to blame but myself, and probably no help from the author who is quite within their rights to tell me “What do you expect? I told you so!”.

    • Nothing to worry about – I tested it with 3.9.2 and it worked just fine. The take the compatibility info as just a suggestion and find that many plugins are more forward compatible than they indicate – it’s just the author hasn’t had a chance to update that info. The plugin itself isn’t likely to need any updates.

    • Because a plugin author hasn’t updated the “tested up to” info doesn’t mean that plugin is not up to date. This is the result of a broken system on WordPress.org and not the plugin author’s fault. Also, if you look at someone like Mark Jaquith with 38 plugins, imagine how frustrating it’d be to update all of those plugins every few weeks just to change the perception that his plugins are out of date.

  3. I think a consistent location for plugin menus would be a big improvement. I hate having to hunt around after activating a plugin. Is it at the top, under Settings, under Tools, under Plugins? Does it even have a settings page? Let me go edit the plugin and see the code so I can figure it out.

  4. I highly recommend using Admin Menu UI (as others have mentioned) to sort plugins into top-level menu items for categories like Security, Performance, SEO/Analytics, and anything else where you have a lot of extra functionality. For plugins that have a main control screen in the backend and a separate settings screen, I try to keep them together in sequence as submenu items. Everything on the top-level gets an appropriate, standard WP icon if the plugin author added something else. Plugins that add content types and sometimes key taxonomies will go in the posts/pages area ranked in the order of their importance/frequency of use. User guide/docs go up top below Dashboard. Simple!

Newsletter

Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.