HelpWP registers three custom WordPress roles on activation:
| Role | Slug | What they can do |
|---|---|---|
| HelpWP Manager | helpwp_manager | Full control over docs, tickets, taxonomies, and settings. |
| HelpWP Agent | helpwp_agent | Read and reply to all tickets, edit docs, but cannot change settings. |
| HelpWP User | helpwp_user | Submit tickets and read their own; see published docs only. |
Standard WordPress Administrator users keep full access to everything, including settings.
Assigning a role
- Go to Users -> All Users.
- Edit the user.
- Pick the HelpWP role from the Role drop-down (or use a multi-role plugin to add it on top of an existing role).
- Update User.
Clients who submit a ticket through the front-end form get the helpwp_user role automatically when their account is provisioned. There is no need to assign it manually.
What each role sees in the admin menu
- Administrator / Manager: the full HelpWP menu – Docs, Tickets, Topics, Reasons, Products, Settings.
- Agent: Docs, Tickets, Topics, Reasons, Products. No Settings.
- User: nothing in the admin menu. They interact only via the front-end shortcodes.
Capabilities
The role definitions live in app/Bootstrap/Activator/User_Role.php. If you need to grant or revoke a specific capability, do so via the standard WP_Role::add_cap() / remove_cap() API at runtime; do not edit the source file directly.
Important note
Role slugs are stored as serialized blobs in wp_usermeta.wp_capabilities. If you ever rename the slugs in code, existing users will lose access until you migrate the wp_usermeta rows. Keep the slugs as-is unless you have a migration plan.
Was this doc helpful?