

The inline editor — select any admin-menu item to edit it in place using the icon-only unified toolbar and shared controls panel (rename, icon, visibility, reset).
Maestro lets you orchestrate the appearance of the WordPress admin menu.
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.
Try Maestro right here. Launch a disposable demo in WordPress Playground — it boots a site with Maestro active, 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.parent_file/submenu_file highlighting fixes — a known minefield, parked deliberately.separator1…) have no stable identity to key against.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.