The WordPress admin menu is fairly easy to navigate out-of-the-box but can become unruly over time. It can get out of control depending on the number of custom post types registered and plugins that add a top-level menu. If you want to hide rarely used menus from the admin menu, check out the Clean WP Admin Menu plugin developed by, Bora Yalçın.
After activating the plugin, browse to the Settings > Clean Admin Menu area in the WordPress backend. This is where you choose which menus to hide. Checking the box next to an item will hide it from view.
If you need to access a hidden menu, click the Toggle Extra link. Here’s an animated GIF provided by Yalçın that shows how it works.
Accessing a menu that’s hidden becomes a two-click process instead of one, but it’s a trade-off users might make in order to achieve a cleaner interface. Menus are hidden globally and are not tied to user accounts.
Yalçın may add the ability to specify whether a menu is hidden globally or per-user in a future update in addition to a “Smart Clean” option. The idea is that if a user hasn’t accessed a menu in a certain amount of time, the plugin will automatically hide it from view.
I tested Clean WP Admin Menu on WordPress 4.5 alpha and it works as expected. This plugin is a proof of concept so if you have any feedback or features you’d like to see added, please provide them in the comments.
Is it possible to show/hide different menus based on a User Role?