RoleGate
RoleGate gives administrators precise control over what each user role can see and do in the WordPress admin. Gate admin menu pages, grant or revoke any capability per role, and manage roles — all through a clean, modern interface. Every change is recorded in an audit log, and administrators can never lock themselves out.
by Towfique Elahe · github.com/towfique-elahe/rolegate · website
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/towfique-elahe/rolegate/archive/refs/heads/main.zipReadme
RoleGate
Role-based access control for WordPress.
RoleGate gives administrators precise control over what each user role can see and do in the WordPress admin. Gate admin menu pages, grant or revoke any capability per role, and manage roles — all through a clean, modern interface. Every change is recorded in an audit log, and administrators can never lock themselves out.
Features
Access Control
- Page Access — choose exactly which admin menu pages each role can reach. Unchecked pages are hidden from the menu and blocked on direct access.
- Capabilities — grant or revoke any capability per role, including those registered by plugins like WooCommerce, Gravity Forms, Yoast, ACF, and Elementor. Capabilities are auto-detected from the live site.
- Presets — apply common capability sets (Editor, Author, Contributor, Subscriber, Shop Manager) in one click.
- Copy between roles — duplicate one role's page permissions to another.
Role Management
- Custom roles — create new roles, optionally cloning an existing role's capabilities.
- Rename & delete — rename any role or delete custom roles. Deleting a role safely reassigns its users to Subscriber.
Tools & Safety
- Export / Import — back up or migrate your configuration as JSON.
- Audit Log — every change is recorded with the user and timestamp.
- Admin-safe — administrators always retain full, unrestricted access and cannot lock themselves out.
Installation
- Upload the
rolegatefolder to/wp-content/plugins/. - Activate RoleGate through the Plugins menu.
- Open RoleGate from the admin sidebar.
Requirements
- WordPress 5.5 or higher
- PHP 7.4 or higher
- A user with the
administratorrole to configure access
Security
RoleGate is built to fail safe. Administrators are never restricted, and a role with no pages selected keeps unrestricted access — so nobody gets locked out by accident.
- Admins are never gated — full, unrestricted access is always preserved.
- Safe defaults — roles with no explicit configuration are not restricted.
- Auditable — every configuration change is logged with the responsible user and timestamp.
Changelog
1.0.0
- Initial release of RoleGate.
Author
Towfique Elahe Website: towfiqueelahe.com GitHub: github.com/towfique-elahe
License
GPL-2.0+ — see https://www.gnu.org/licenses/gpl-2.0.html