Roles and permissions

HelpWP registers three custom WordPress roles on activation:

RoleSlugWhat they can do
HelpWP Managerhelpwp_managerFull control over docs, tickets, taxonomies, and settings.
HelpWP Agenthelpwp_agentRead and reply to all tickets, edit docs, but cannot change settings.
HelpWP Userhelpwp_userSubmit tickets and read their own; see published docs only.

Standard WordPress Administrator users keep full access to everything, including settings.

Assigning a role

  1. Go to Users -> All Users.
  2. Edit the user.
  3. Pick the HelpWP role from the Role drop-down (or use a multi-role plugin to add it on top of an existing role).
  4. 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?

Scroll to Top