WP Manifestindependent plugin directory
manifest / admin / wordpress-editor-menu-control-plugin

Editor Menu Control

A really simple WordPress plugin that removes certain parts of the admin panel for editors user role. The administrator can uncheck which menus from the admin panel can be hidden.

by Simeon Zhelev · github.com/simeon-zhelev/wordpress-editor-menu-control-plugin · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/simeon-zhelev/wordpress-editor-menu-control-plugin/archive/refs/heads/main.zip

Readme

Editor Menu Control

A lightweight WordPress plugin that lets site administrators choose which admin-panel menu items are hidden from users with the Editor role.

Author: Simeon Zhelev — zhelev.s@gmail.com
Version: 1.0.0
License: GPL-2.0+
Requires WordPress: 6.0 or later
Requires PHP: 8.0 or later


Features

  • Visual card-based settings page under Settings → Editor Menu Control
  • Covers all default WordPress menus; automatically detects menus added by themes and plugins
  • Live counter showing how many items are currently hidden
  • Search/filter to quickly find any menu item
  • "Hide all" / "Show all" bulk actions
  • Blocks direct URL access to hidden pages (403 response)
  • Administrators are never restricted — only the Editor role is affected

Installation

  1. Download the plugin ZIP file.
  2. In your WordPress admin, go to Plugins → Add New → Upload Plugin.
  3. Upload the ZIP, then click Install Now and Activate.
  4. Go to Settings → Editor Menu Control and choose which menu items to hide from Editors.
  5. Click Save changes.

Alternatively, upload the editor-menu-control folder directly to /wp-content/plugins/ via FTP and activate from the Plugins screen.


Usage

Open Settings → Editor Menu Control. Each admin menu item is displayed as a card showing its current visibility status.

Action How
Hide a menu item Click its card — it turns red and is marked "Hidden"
Show a hidden item Click the card again to restore it
Bulk-hide everything Click Hide all
Bulk-restore everything Click Show all
Find a specific item Type in the search box to filter cards

When you are done, click Save changes.


How it works

Role Behaviour
Administrator Always sees the full admin menu; can configure which items are hidden
Editor Only sees items the administrator has not hidden; direct URL access to a hidden page returns a 403 error

On first load the plugin captures a live JavaScript snapshot of the admin sidebar and saves it server-side, so any menus registered by third-party plugins or themes are automatically detected and appear in the settings page.


File Structure

editor-menu-control/
├── editor-menu-control.php          ← Plugin bootstrap & hooks
├── includes/
│   ├── class-emc-admin.php          ← Settings page, AJAX handler
│   └── class-emc-restrictions.php  ← Hides menus for the Editor role
└── assets/
    ├── admin.css                    ← Settings page styles
    └── admin.js                     ← Toggle logic, bulk actions, search

Compatibility

  • Works alongside any theme or plugin that registers custom post types or admin menus.
  • Does not modify user capabilities or roles — restrictions are applied at the menu display layer only.
  • Compatible with WordPress Multisite (per-site settings).

Uninstall

Deactivate then delete the plugin from Plugins → Installed Plugins. All stored settings (emc_hidden_menus, emc_menu_snapshot) are removed from the database automatically.


Changelog

1.0.0

  • Initial release.

License

This plugin is licensed under the GNU General Public License v2.0 or later.

Read the full README on GitHub →