

The inline editor — select any admin-menu item to edit it in place using the quiet, wp-admin-native toolbar and shared controls panel (rename, icon, visibility, reset). A single admin-bar toggle enters and exits edit mode — labelled "Edit Menu" when idle and "Exit Menu Editor" while editing.
Maestro lets you orchestrate the appearance of the WordPress admin menu — rename admin menu items, reorder them, change their icons, and hide admin menu items from the roles and people who don’t need them.
Every WordPress install accumulates menu clutter. A dozen plugins each claim a top-level slot, submenus sit in an order nobody chose, and clients meet a dashboard full of tools that aren’t theirs. Maestro is how you customize the admin menu back into shape: declutter it for a client site, rename cryptic plugin labels into the words your team actually uses, reorder the admin menu so what you touch daily is at the top, and hide admin menu items per user role — or from one named person — so everyone sees only their own work.
Instead of a separate settings screen, Maestro turns the admin menu into something you edit in place — right where it lives. Toggle Edit Menu from the admin bar, and the menu becomes editable. Click a menu item to rename it, hide it from selected user roles, or change its icon. Drag submenu items and whole menu groups to reorder them. Nothing to configure first, and nothing to learn: the menu you are editing is the menu you are looking at.
And it stays out of the way. Maestro adds no autoloaded options and does no work at all on the front end, so a menu you tidied for the dashboard costs your visitors nothing (see Performance & footprint below).
Try Maestro right here. Launch a demo in WordPress Playground — it boots a throwaway site with the plugin active in edit mode, plus User Switching and test users (editor, author, contributor, subscriber; password password) so you can try per-role visibility by switching to another user’s account.
Maestro’s enhancements are only activated for logged-in users with an Administrator role. They can:
Alt+Arrow).Changes are global — one configuration applies to everyone. Your custom menu configuration is stored as a sparse delta (just the differences) layered over the menu WordPress builds on each load. Nothing is rebuilt or duplicated, so a reset simply removes the delta, and the original menu returns.
Hiding a menu item only declutters the menu. The underlying admin page still loads for anyone who knows or types its URL if they’re authorized to see it. That’s because a page’s own registered capability is the true lock. Maestro operates on the menu (presentation), which is a different plane from authorization.
If you need to actually prevent access, pair Maestro with a capability manager like PublishPress Capabilities**. It’s menu-aware, and its Pro tier can block admin pages by URL.
The maestro_capability filter lets such a plugin hand editing rights to a custom capability instead of the default manage_options.
The editor is keyboard-operable end to end — select with Enter/Space, reorder with Alt+Arrow, and every move and save is announced to screen
readers. Modified items carry a non-color indicator with screen-reader text, so their state is never indicated by color alone.
Maestro uses the maestro-menu-editor text domain and ships a translation template plus starter language packs for Spanish (es_ES), German (de_DE), Japanese (ja), French (fr_FR), Portuguese – Brazil (pt_BR), and Italian (it_IT). WordPress.org language packs override and extend these; native-speaker and WordPress Polyglots reviews are welcome.
Config — reads/writes/sanitizes a single option (maestro_config) holding only the deltas. Reset = delete the option; the natural menu returns automatically.Replay — on a late admin_menu pass, applies rename/icon/visibility to the $menu/$submenu globals and reorders submenus. Top-level order uses the core custom_menu_order + menu_order filters. Resilient to missing slugs (orphans are skipped) and new items (appended at the end).Rest — maestro/v1/config (GET/POST/DELETE), capability-gated, X-WP-Nonce.maestroData.i18n; the runtime zip includes the bundled POT template and starter catalogs.Unlike other admin menu editors, Maestro won’t hurt your site’s performance. It’s small enough that there is nothing to compress, optimize, or tune.
Maestro is built to stay out of the way:
alloptions — the one that matters. WordPress loads every autoloaded option into memory on every request that boots it, including front-end pages served to logged-out visitors. A menu configuration is admin-only data, so an autoloaded one is a tax on traffic that will never read it — and a bloated autoloaded bundle is a classic cause of a sluggish site. Maestro’s option is explicitly non-autoloaded. Check it on your own site: wp option list --autoload=on will not list maestro_config.maestro_config), read once per request and cached, no matter how many parts of the plugin ask for it. With a persistent object cache (Redis / Memcached) that drops to zero. This is a deliberate trade: one query where the data is actually used, so that public traffic — the bulk of what a live site serves — pays nothing.wp_options row, created only when you first save a change — a fresh install stores nothing. No custom tables, no post or user meta, no transients, no cron jobs. Uninstalling deletes that single row.admin_menu pass, not through extra queries. Method and full numbers: config size vs. page-load cost.(Size figures are a v1.4.1 snapshot; timings were measured 2026-08-03 on WordPress 7.0 / PHP 8.3.)
parent_file/submenu_file highlighting fixes — a known minefield, parked deliberately.admin_menu pass; a plugin that registers submenus on an unusually late hook may not be captured.Bundled Bootstrap Icons are © The Bootstrap Authors, licensed under the MIT License. They are recoloured to WordPress
menu grey and embedded as data-URIs; see bin/generate-bootstrap-icons.mjs.
If Maestro saves you time or brings you or your clients the joy of a tidy admin menu, you can support its ongoing maintenance through GitHub Sponsors.