Primary

Capabilities

Go to Groups > Capabilities where you can add, remove and manage capabilities. These capabilities can be assigned to groups and can thus be applied to their members.

The capabilities include the standard WordPress capabilities and you can also define additional capabilities for your web-application. Also, when you install a new plugin which defines its own capabilities, you can refresh the capabilities managed here and assign them to groups, too.

You can use the Filters on top of the list to reduce the capabilities shown and find those that are of interest by ID or by name. Please note that the filters are persistent; if you set a filter here and move away from this page without clearing it, the filter will still be active when you come back to this screen.

Input the Capability ID or the Capability name to search or filter the list of capabilities. Click Apply and the list will be reduced showing matching results. Hit the Clear button to remove the applied filters.

capability-search

For example, you can search for any capabilities that contain the word ‘plugins’. If you are preparing a group that is intended to allow partial administrative access to certain parts of the Dashboard, this is quite useful to complete the capabilities that should be assigned to such a group. Some plugins define their own capabilities and also those used for custom post types are interesting, if you want to grant a group administrative rights to manage such a custom post type in part or fully.

Adding a Capability

To create a new capability, go to Groups > Capabilities and click the New Capability button.

This will take you to a form where you can input the name of the new capability and provide a description for it.

add-new-capability

Click Add to create the new capability – if successful, it will appear in the list of capabilities.

You can now use the new capability and assign it to groups, use it with shortcodes, etc.

Refreshing the Capabilities

If you have created a custom post type or installed a new plugin, it is possible that you want to use the related capabilities it defines with some groups. These new capabilities are not discovered automatically but you can go to Groups > Capabilities and hit the Refresh button to update the capabilities list.

After  you click the Refresh button, the system will tell you if any new capabilities have been added.

Editing and removing Capabilities

From Groups > Capabilities navigate to the page that contains the desired capabilities or use the Filters to reduce the list and locate the capabilities that you want to edit or remove more quickly.

edit-remove-capabilityHover over the desired capability to see the Edit and Remove links. Click the EditEdit Symbol or RemoveRemove Symbol link for the capability and you will be taken to a form to edit the capability or be asked to confirm the removal. You can also use bulk actions to remove several capabilities at once.

Assigning Capabilities to Groups

You can edit a group and assign one or more capabilities to it. You can also assign or remove capabilities to and from one or more groups in bulk. To manage assigned capabilities for a single group, simply go to Groups > Groups and click the Edit link for the group. You can then assign and remove the desired capabilities for that group.

If you want to assign to or remove capabilities from several groups, you can do this directly from Groups > Groups:

  1. Tick the checkboxes to select the groups you want to apply the action to.
  2. Select the Bulk Action you want to apply: Add capability or Remove capability.
  3. Choose the capabilities you want to add to or remove from the selected groups and click Apply.

capability-search-display

Capability Inheritance

create-advanced-group

Child groups inherit capabilities from their parents (and grandparents and so on).

Let’s assume we already have a group named Basic which has one capability assigned called basic.

Now we want to add a child group called Advanced which should have its own capability named advanced assigned but should also inherit any capability from the Basic group. To do that, we simply assign Basic as Advanced’s parent.

As groups inherit the capabilities of their parent groups, the Advanced group inherits the capabilities of the Basic group. This is shown in the list of groups in the Capabilities column. Inherited capabilities are shown in italics.

capabilities-inheritance

If we have a user like Abraham who belongs to the Advanced group, then this user will have all the capabilities that the Advanced group and its parent groups have.

user-groups

Capabilities and Legacy Access Control

In case you are running Groups with legacy access control enabled, the groups_read_post capability is enabled for access control by default and can be used to restrict access. Additional capabilities can be identified on the Groups > Options admin screen that may be used to limit access. A user must be a member of a group that has the desired capability to restrict access.