| 1 |
=== Groups === |
| 2 |
Contributors: itthinx, proaktion |
| 3 |
Donate link: http://www.itthinx.com/plugins/groups |
| 4 |
Tags: access, access control, capability, capabilities, content, download, downloads, file, file access, files, group, groups, member, members, membership, memberships, paypal, permission, permissions, subscription, subscriptions, woocommerce |
| 5 |
Requires at least: 4.0 |
| 6 |
Tested up to: 4.6 |
| 7 |
Stable tag: 1.13.0 |
| 8 |
License: GPLv3 |
| 9 |
|
| 10 |
Groups is an efficient and powerful solution, providing group-based user membership management, group-based capabilities and content access control. |
| 11 |
|
| 12 |
== Description == |
| 13 |
|
| 14 |
Groups is designed as an efficient, powerful and flexible solution for group-oriented membership and content access control. |
| 15 |
|
| 16 |
It provides group-based user membership management, group-based capabilities and access control for content, built on solid principles. |
| 17 |
|
| 18 |
Groups is light-weight and offers an easy user interface, while it acts as a framework and integrates standard WordPress capabilities and application-specific capabilities along with an extensive API. |
| 19 |
|
| 20 |
Enhanced functionality is available via official [extensions](http://www.itthinx.com/plugins/groups/) for Groups. |
| 21 |
|
| 22 |
### Documentation ### |
| 23 |
|
| 24 |
The official documentation is located at the [Groups documentation pages](http://docs.itthinx.com/document/groups/). |
| 25 |
|
| 26 |
### Features ### |
| 27 |
|
| 28 |
#### User groups #### |
| 29 |
|
| 30 |
- Supports an unlimited number of groups |
| 31 |
- Provides a Registered group which is automatically maintained |
| 32 |
- Users can be assigned to any group |
| 33 |
- Users are added automatically to the Registered group |
| 34 |
|
| 35 |
#### Groups hierarchy #### |
| 36 |
|
| 37 |
- Supports group hierarchies with capability inheritance |
| 38 |
|
| 39 |
#### Group capabilities #### |
| 40 |
|
| 41 |
- Integrates standard WordPress capabilities which can be assigned to groups and users |
| 42 |
- Supports custom capabilities: allows to define new capabilities for usage in plugins and web applications |
| 43 |
- Users inherit capabilities of the groups they belong to |
| 44 |
- Groups inherit capabilities of their parent groups |
| 45 |
|
| 46 |
#### Access control #### |
| 47 |
|
| 48 |
- Built-in access control that allows to restrict access to posts, pages and custom content types to specific groups and users only |
| 49 |
- control access to content by groups: shortcodes allow to control who can access content on posts, show parts to members of certain groups or to those who are not members |
| 50 |
Shortcodes: [groups_member], [groups_non_member] |
| 51 |
- control access to content by capabilities: show (or do not show) content to users who have certain capabilities |
| 52 |
Shortcodes: [groups_can], [groups_can_not] |
| 53 |
|
| 54 |
#### Easy user interface #### |
| 55 |
|
| 56 |
- integrates nicely with the standard WordPress Users menu |
| 57 |
- provides an intuitive Groups menu |
| 58 |
- conceptually clean views showing the essentials |
| 59 |
- quick filters |
| 60 |
- bulk-actions where needed, for example apply capabilities to groups, bulk-add users to groups, bulk-remove users from groups |
| 61 |
|
| 62 |
#### Sensible options #### |
| 63 |
|
| 64 |
- administrator overrides can be turned off |
| 65 |
- optional tree view for groups can be shown only when needed |
| 66 |
- provides its own set of permissions |
| 67 |
- cleans up after testing with a "delete all plugin data" option |
| 68 |
|
| 69 |
#### Access Control #### |
| 70 |
|
| 71 |
Access to posts and pages can be restricted by capability. |
| 72 |
|
| 73 |
Any capability can be used to restrict access, including new capabilities. |
| 74 |
|
| 75 |
If access to a post is restricted, only users who belong to a group with that |
| 76 |
capability may access the post. |
| 77 |
|
| 78 |
Groups defines the groups_read_post capability by default, which can be |
| 79 |
used to restrict access to certain posts or pages to groups |
| 80 |
with that capability only. Any other capability (including new ones) can be |
| 81 |
used to limit access as well. |
| 82 |
|
| 83 |
#### Framework #### |
| 84 |
|
| 85 |
- Solid and sound data-model with a complete API that allows developers to create group-oriented web applications and plugins |
| 86 |
|
| 87 |
#### Multisite #### |
| 88 |
|
| 89 |
- All features are supported independently for each blog in multisite installations |
| 90 |
|
| 91 |
### Feedback ### |
| 92 |
|
| 93 |
Feedback is welcome! |
| 94 |
|
| 95 |
If you need help, have problems, want to leave feedback or want to provide constructive criticism, please do so here at the [Groups plugin page](http://www.itthinx.com/plugins/groups/). |
| 96 |
|
| 97 |
Please try to solve problems there before you rate this plugin or say it doesn't work. There goes a _lot_ of work into providing you with free quality plugins! Please appreciate that and help with your feedback. Thanks! |
| 98 |
|
| 99 |
#### Twitter #### |
| 100 |
|
| 101 |
[Follow @itthinx on Twitter](http://twitter.com/itthinx) for updates on this and other plugins. |
| 102 |
|
| 103 |
### Translations ### |
| 104 |
|
| 105 |
Brazilian Portuguese translation by [Walter Jaworski](http://wjaworski.com), |
| 106 |
Dutch translation by [Carsten Alsemgeest](http://presis.nl), |
| 107 |
French translation by [Stéphane Passedouet](http://www.pheeric.com), |
| 108 |
German translation by [itthinx](http://www.itthinx.com), |
| 109 |
Lithuanian translation by [Vincent G](http://www.Host1Free.com), |
| 110 |
Spanish translation by [Juan Amor](http://www.lamadjinpa.es), |
| 111 |
Swedish translation by [Andréas Lundgren](http://adevade.com). |
| 112 |
|
| 113 |
Many thanks for your help! |
| 114 |
|
| 115 |
== Installation == |
| 116 |
|
| 117 |
1. Upload or extract the `groups` folder to your site's `/wp-content/plugins/` directory. You can also use the *Add new* option found in the *Plugins* menu in WordPress. |
| 118 |
2. Enable the plugin from the *Plugins* menu in WordPress. |
| 119 |
|
| 120 |
== Frequently Asked Questions == |
| 121 |
|
| 122 |
= Where is the documentation? = |
| 123 |
|
| 124 |
The official documentation is located at the [Groups documentation pages](http://docs.itthinx.com/document/groups/). |
| 125 |
|
| 126 |
= I have a question, where do I ask? = |
| 127 |
|
| 128 |
For questions directly related to Groups, you can leave a comment at the [Groups plugin page](http://www.itthinx.com/plugins/groups/). |
| 129 |
|
| 130 |
= I want Advanced and Premium members, where the Premium members can access everything that Advanced members can access. How can I do that? = |
| 131 |
|
| 132 |
Example: Advanced and Premium members |
| 133 |
|
| 134 |
1. Go to *Groups > Capabilities* and define two new capabilities, let's call them *advanced* and *premium*. |
| 135 |
2. Go to *Groups > Groups* and define two new groups, let's call them *Advanced Members* and *Premium Members* - select *Advanced Members* as the *Parent* for the *Premium Members* group. |
| 136 |
3. Assign the *advanced* capability to the *Advanced Members* group and the *premium* capability to the *Premium Members* group. |
| 137 |
4. Go to *Groups > Options* and tick the checkboxes for *advanced* and *premium* under _Access restrictions_ and hit the *Save* button at the end of the page. |
| 138 |
5. Now create an example post that only members of the *Advanced Members* group should be able to see and tick the *advanced* checkbox under _Access restrictions_. |
| 139 |
6. Create another post for *Premium Members* and tick the *premium* checkbox for that post. |
| 140 |
7. Assign test users to both groups, log in as each user in turn and see which posts will be accessible. |
| 141 |
|
| 142 |
= How do I limit access to posts so that users in group A can not read the same as those in group B and vice-versa? = |
| 143 |
|
| 144 |
Example: Green and Red members |
| 145 |
|
| 146 |
1. Go to *Groups > Capabilities* and define two new capabilities, call them *green* and *red*. |
| 147 |
2. Go to *Groups > Groups* and define two new groups, let's call them *Green Members* and *Red Members* |
| 148 |
3. Assign the *green* capability to the *Green Members* group and the *red* capability to the *Red Members* group. |
| 149 |
4. Go to *Groups > Options* and tick the checkboxes for *green* and *red* under _Access restrictions_ and hit the *Save* button at the end of the page. |
| 150 |
5. Now create an example post that only members of the *Green Members* group should be able to see and tick the *green* checkbox under _Access restrictions_. |
| 151 |
6. Create another post for *Red Members* and tick the *red* checkbox for that post. |
| 152 |
7. Assign a test user to any of the above groups, log in as that user and the post will be accessible. |
| 153 |
|
| 154 |
= Are access restrictions for Custom Post Types supported? = |
| 155 |
|
| 156 |
Yes. Access restrictions can be turned on or off for specific CPTs on the *Groups > Options* page. |
| 157 |
|
| 158 |
= How can I show groups that users belong to on their profile page in the admin section? = |
| 159 |
|
| 160 |
Go to *Groups > Options* and enable the option under *User profiles*. |
| 161 |
|
| 162 |
= Developers aka What about Groups' API? = |
| 163 |
|
| 164 |
The Groups plugin provides an extensive framework to handle memberships, group-based capabilities and access control. |
| 165 |
|
| 166 |
The API documentation is available here: [Groups API](http://api.itthinx.com/groups). |
| 167 |
|
| 168 |
Also refer to the official [Groups](http://www.itthinx.com/plugins/groups/) plugin page and the [Groups documentation](http://docs.itthinx.com/document/groups/) pages. |
| 169 |
|
| 170 |
== Screenshots == |
| 171 |
|
| 172 |
See also [Groups](http://www.itthinx.com/plugins/groups/) |
| 173 |
|
| 174 |
1. Groups - this is where you add and remove groups and assign capabilities to groups. |
| 175 |
2. Capabilities - here you get an overview of the capabilities that are defined and you can add and remove capabilities as well. |
| 176 |
3. Users - group membership is managed from the standard Users admin view. |
| 177 |
4. Access restrictions meta box - on pages and posts (or custom content types) you can restrict access to users who are part of a group with capabilities. |
| 178 |
5. Usage of the [groups_member] and [groups_non_member] shortcodes to limit visibility of content to users who are members of a group or users who are not members of a group. Multiple comma-separated groups can be specified. |
| 179 |
6. Usage of the [groups_can] and [groups_can_not] shortcodes. Limits visibility of enclosed content to those users who have the capability or those who do not. Multiple capabilities can be given. |
| 180 |
7. Options - you can adjust the plugin's settings here. |
| 181 |
8. More options. |
| 182 |
|
| 183 |
== Changelog == |
| 184 |
|
| 185 |
= 1.13.0 = |
| 186 |
* Added a filter on wp_count_posts. |
| 187 |
|
| 188 |
== Upgrade Notice == |
| 189 |
|
| 190 |
= 1.13.0 = |
| 191 |
This release corrects an issue related to the post counts displayed. |
| 192 |
|