| 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.4.2 |
| 7 |
Stable tag: 1.10.1 |
| 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 |
Dutch translation by [Carsten Alsemgeest](http://presis.nl), |
| 106 |
French translation by [Stéphane Passedouet](http://www.pheeric.com), |
| 107 |
German translation by [itthinx](http://www.itthinx.com), |
| 108 |
Lithuanian translation by [Vincent G](http://www.Host1Free.com), |
| 109 |
Spanish translation by [Juan Amor](http://www.lamadjinpa.es), |
| 110 |
Swedish translation by [Andréas Lundgren](http://adevade.com). |
| 111 |
|
| 112 |
Many thanks for your help! |
| 113 |
|
| 114 |
== Installation == |
| 115 |
|
| 116 |
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. |
| 117 |
2. Enable the plugin from the *Plugins* menu in WordPress. |
| 118 |
|
| 119 |
== Frequently Asked Questions == |
| 120 |
|
| 121 |
= Where is the documentation? = |
| 122 |
|
| 123 |
The official documentation is located at the [Groups documentation pages](http://docs.itthinx.com/document/groups/). |
| 124 |
|
| 125 |
= I have a question, where do I ask? = |
| 126 |
|
| 127 |
For questions directly related to Groups, you can leave a comment at the [Groups plugin page](http://www.itthinx.com/plugins/groups/). |
| 128 |
|
| 129 |
= I want Advanced and Premium members, where the Premium members can access everything that Advanced members can access. How can I do that? = |
| 130 |
|
| 131 |
Example: Advanced and Premium members |
| 132 |
|
| 133 |
1. Go to *Groups > Capabilities* and define two new capabilities, let's call them *advanced* and *premium*. |
| 134 |
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. |
| 135 |
3. Assign the *advanced* capability to the *Advanced Members* group and the *premium* capability to the *Premium Members* group. |
| 136 |
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. |
| 137 |
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_. |
| 138 |
6. Create another post for *Premium Members* and tick the *premium* checkbox for that post. |
| 139 |
7. Assign test users to both groups, log in as each user in turn and see which posts will be accessible. |
| 140 |
|
| 141 |
= 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? = |
| 142 |
|
| 143 |
Example: Green and Red members |
| 144 |
|
| 145 |
1. Go to *Groups > Capabilities* and define two new capabilities, call them *green* and *red*. |
| 146 |
2. Go to *Groups > Groups* and define two new groups, let's call them *Green Members* and *Red Members* |
| 147 |
3. Assign the *green* capability to the *Green Members* group and the *red* capability to the *Red Members* group. |
| 148 |
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. |
| 149 |
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_. |
| 150 |
6. Create another post for *Red Members* and tick the *red* checkbox for that post. |
| 151 |
7. Assign a test user to any of the above groups, log in as that user and the post will be accessible. |
| 152 |
|
| 153 |
= Are access restrictions for Custom Post Types supported? = |
| 154 |
|
| 155 |
Yes. Access restrictions can be turned on or off for specific CPTs on the *Groups > Options* page. |
| 156 |
|
| 157 |
= How can I show groups that users belong to on their profile page in the admin section? = |
| 158 |
|
| 159 |
Go to *Groups > Options* and enable the option under *User profiles*. |
| 160 |
|
| 161 |
= Developers aka What about Groups' API? = |
| 162 |
|
| 163 |
The Groups plugin provides an extensive framework to handle memberships, group-based capabilities and access control. |
| 164 |
|
| 165 |
The API documentation is available here: [Groups API](http://api.itthinx.com/groups). |
| 166 |
|
| 167 |
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. |
| 168 |
|
| 169 |
== Screenshots == |
| 170 |
|
| 171 |
See also [Groups](http://www.itthinx.com/plugins/groups/) |
| 172 |
|
| 173 |
1. Groups - this is where you add and remove groups and assign capabilities to groups. |
| 174 |
2. Capabilities - here you get an overview of the capabilities that are defined and you can add and remove capabilities as well. |
| 175 |
3. Users - group membership is managed from the standard Users admin view. |
| 176 |
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. |
| 177 |
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. |
| 178 |
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. |
| 179 |
7. Options - you can adjust the plugin's settings here. |
| 180 |
8. More options. |
| 181 |
|
| 182 |
== Changelog == |
| 183 |
|
| 184 |
= 1.10.1 = |
| 185 |
* Fixed the French translation which introduced incorrect markup breaking the help button. |
| 186 |
* Added the groups_admin_groups_add_form_after_fields filter. |
| 187 |
* Added the groups_admin_groups_add_submit_success action. |
| 188 |
* Added the groups_admin_groups_edit_form_after_fields filter. |
| 189 |
* Added the groups_admin_groups_edit_submit_success action. |
| 190 |
* Fixed some code formatting (tabs). |
| 191 |
|
| 192 |
= 1.10.0 = |
| 193 |
* Adjusted the Groups and Capabilities screens' UI elements. |
| 194 |
* Reduced the filters section footprint on the Groups screen. |
| 195 |
* Reduced the filters section footprint on the Capabilities screen. |
| 196 |
* Fixed use of deprecated constructor in the Groups_Pagination class. |
| 197 |
* Fixed sorting by description and the sorting indicator on the Groups screen. |
| 198 |
* Fixed sorting by description and the sorting indicator on the Capabilities screen. |
| 199 |
* Fixed some code formatting issues including superfluous whitespace. |
| 200 |
* Improved the footer rendering and footprint. |
| 201 |
|
| 202 |
= 1.9.1 = |
| 203 |
* WordPress 4.4 compatible. |
| 204 |
* Updated selectize.js to 0.12.1 (standalone). |
| 205 |
* Fixed a representation issue for the lower group selector on the Users screen. |
| 206 |
* Updated the page headings to use h1 instead of h2. |
| 207 |
* Added the is_member method to Groups_User. |
| 208 |
* Updated the footer. |
| 209 |
|
| 210 |
= 1.9.0 = |
| 211 |
* Added own cache encapsulation to guard against flaws in outdated cache implementations. |
| 212 |
* Added new user group property to obtain hierarchical groups. |
| 213 |
* Improved user properties to use own caching. |
| 214 |
* Fixed media field filters wrongly declared as actions. |
| 215 |
* Fixed the version comparison operation. |
| 216 |
|
| 217 |
= 1.8.1 = |
| 218 |
* Fixed potential XSS vulnerabilities related to the unescaped use of the $_SERVER['REQUEST_URI'] in some forms. |
| 219 |
|
| 220 |
= 1.8.0 = |
| 221 |
* WordPress 4.3.1 compatibility tested. |
| 222 |
* Add-ons section added. |
| 223 |
|
| 224 |
= 1.7.2 = |
| 225 |
* WordPress 4.3 compatibility tested. |
| 226 |
* Updated the menu position constant (string instead of number). |
| 227 |
* Removed translation of the Groups menu title (related to a consistent appearance and would also be affected by a a core bug). |
| 228 |
* Fixed padding for the header checkbox on the Groups and Capabilities screens. |
| 229 |
|
| 230 |
= 1.7.1 = |
| 231 |
* Fixes an issue with map_meta_cap filtering where no valid post ID is provided. |
| 232 |
|
| 233 |
= 1.7.0 = |
| 234 |
* Added the French translation. |
| 235 |
* Added the [groups_login] shortcode. |
| 236 |
* Added the [groups_logout] shortcode. |
| 237 |
* Updated the German translation. |
| 238 |
* Updated the Spanish translation. |
| 239 |
* Added the groups_deleted_capability_capability action. |
| 240 |
* Fixed an issue with deleted capabilities restricting access to posts. |
| 241 |
* Fixed cache entries for capabilities. |
| 242 |
|
| 243 |
= 1.6.0 = |
| 244 |
* Added the German translation. |
| 245 |
* Updated the Spanish translation. |
| 246 |
* Updated the Groups menu position. |
| 247 |
* Removed empty strings from translation. |
| 248 |
|
| 249 |
= 1.5.5 = |
| 250 |
* Added administrative links to the plugin entry. |
| 251 |
|
| 252 |
= 1.5.4 = |
| 253 |
* Added the Dutch translation. |
| 254 |
|
| 255 |
= 1.5.3 = |
| 256 |
* Added a comparison method for groups and capabilities. |
| 257 |
* Updated the documentation link in the help content. |
| 258 |
|
| 259 |
= 1.5.2 = |
| 260 |
* Improved internal definitions to use API function instead of WP_CONTENT_DIR |
| 261 |
and WP_CONTENT_URL constants. |
| 262 |
* Now showing inherited capabilities for groups. |
| 263 |
* Added ABSPATH check to plugin main file. |
| 264 |
* Improved the UI rendering cancel links as buttons. |
| 265 |
* Improved the UI adding some space on capability selector box. |
| 266 |
* Fixed a pagination issue when the page number is indicated on the Groups or Capabilities screen. |
| 267 |
|
| 268 |
= 1.5.1 = |
| 269 |
* Please **MAKE A BACKUP** of your site and database PRIOR to updating. |
| 270 |
* WordPress 4.2 compatible. |
| 271 |
* Adopted a more flexible index size on the capability row of the capability table. |
| 272 |
|
| 273 |
= 1.5.0 = |
| 274 |
* Please **MAKE A BACKUP** of your site and database PRIOR to updating. |
| 275 |
* WordPress 4.2 compatible. |
| 276 |
* Reduced the index size on the capability row of the capability table. |
| 277 |
|
| 278 |
= 1.4.15 = |
| 279 |
* Due to changes in versions 1.4.14 and 1.4.15, it's important to **MAKE A BACKUP** of the site & database, test the site, extensions & theme PRIOR to updating. |
| 280 |
* Fixes a cache incompatibility with caching mechanisms that do not implement wp_cache_get()'s function signature fully. |
| 281 |
This addresses cases specifically where the fourth parameter $found is not initialized as expected upon return. |
| 282 |
The performance improvements included in this release are lessened with caching plugins that fail to implement the return value disambiguation via $found. |
| 283 |
|
| 284 |
= 1.4.14 = |
| 285 |
* Now not using Groups' the_posts filter by default as results are already filtered by Groups' posts_where filter. |
| 286 |
* Added the groups_filter_the_posts filter which can be used to 'reactivate' Groups' the_posts filter where needed. |
| 287 |
* Added caching for capabilities read by capability name. |
| 288 |
* Added caching for groups read by name. |
| 289 |
* Added caching for results obtained in Groups_Post_Access::user_can_read_post(...). |
| 290 |
* Added the groups_post_access_user_can_read_post filter. |
| 291 |
* Admin override is disabled by default (existing installs need to disable manually if options were saved). |
| 292 |
* Swedish translation by [Andréas Lundgren](http://adevade.com) added. |
| 293 |
|
| 294 |
= 1.4.13 = |
| 295 |
* WordPress 4.1 compatible. |
| 296 |
|
| 297 |
= 1.4.12 = |
| 298 |
* Fixes missing selectize Javascript for the media uploader's attachment popup. |
| 299 |
|
| 300 |
= 1.4.11 = |
| 301 |
* WordPress 4.0 compatible. |
| 302 |
|
| 303 |
= 1.4.10 = |
| 304 |
* Improved: code documentation |
| 305 |
* WordPress 3.9 compatibility checked |
| 306 |
* Changed some filter usage with prepare() for 3.9 nags. |
| 307 |
* Fixed unmatched tags in the tree view. |
| 308 |
|
| 309 |
= 1.4.9 = |
| 310 |
* Fixed: Tree view doesn't appear/disappear in menu directly after setting the option. |
| 311 |
* Improved: Feedback when options have been saved. |
| 312 |
* Improved: UI size adjustments. |
| 313 |
* Added: New API methods Groups_Group::get_group_ids() and Groups_Group::get_groups(). |
| 314 |
* Improved: groups and capabilities table cell titles and ellipsis added. |
| 315 |
|
| 316 |
= 1.4.8 = |
| 317 |
* Fixed: A closing tag in the group list on the user profile. |
| 318 |
* Fixed: Help wording. |
| 319 |
* Improved: Capabilities in the Access Restrictions column are sorted for more consistent display. |
| 320 |
* Improved: Reduced ID, Edit and Remove column widths on Groups and Capabilities screens. |
| 321 |
* Fixed: Stripping added slashes from groups and capabilities displayed. |
| 322 |
* Added: Feedback when groups and capabilities are created, updated or removed in admin. |
| 323 |
* Added: group and exclude_group attributes for the [groups_user_groups] shortcode. |
| 324 |
* Improved: Replaced remnant CR LF line-endings in code. |
| 325 |
* Fixed: Handling updates to a capability when the capability field is empty. |
| 326 |
* Fixed: Handling updates to a group when the name field is empty. |
| 327 |
* Fixed: Don't allow to use the name of another existing group when updating a group. |
| 328 |
* Fixed: Don't allow to use the name of another existing capability when updating one. |
| 329 |
|
| 330 |
= 1.4.7 = |
| 331 |
* Security improvement: plugin files accessed directly exit |
| 332 |
|
| 333 |
= 1.4.6.1 = |
| 334 |
* Fixed: Don't interfere with output when there is no post (the_content and get_the_excerpt filters) |
| 335 |
|
| 336 |
= 1.4.6 = |
| 337 |
* Security fix : Certain capabilities could be granted to users instead of being denied with a change introduced in version 1.4.5. Roles with negated capabilities would effectively grant these capabilities to the user. |
| 338 |
|
| 339 |
= 1.4.5 = |
| 340 |
* Using a WordPress API function get_post_type_capabilities() instead of semi-hardcoded capabilities for access restriction checks (affects CPTs). |
| 341 |
* Changed: Taking role-based capabilities into account when creating cache entries for the Groups_User object. The new groups_user_add_role_capabilities filter allows to modify this new behaviour by returning false. |
| 342 |
* Added: groups_user_add_role_capabilities filter. |
| 343 |
|
| 344 |
= 1.4.4 = |
| 345 |
* WordPress 3.8 compatibility checked. |
| 346 |
* Fixed: Access restriction options per post type when none is checked. |
| 347 |
|
| 348 |
= 1.4.3 = |
| 349 |
* Added: Bulk editing (add/remove) of post access restriction capabilities. |
| 350 |
* Fixed: A typo in the Access Restriction column's tooltip text. |
| 351 |
* Fixed: Validation of access restriction capabilities when saved on options admin screen. |
| 352 |
* Changed: Users must now have the groups_access capability to be able to use the access restriction meta box on posts. |
| 353 |
|
| 354 |
= 1.4.2 = |
| 355 |
* Added: Access restriction capabilities shown for enabled post types on overview screens. |
| 356 |
* WordPress 3.7.1 compatibility checked. |
| 357 |
* Fixed: Error caused by typo when obtaining group_ids_deep property for a Groups_User. |
| 358 |
* Changed: Replaced some __get calls by properties. |
| 359 |
* Added: Filter by access restriction capabilities for enabled post types on overview screens. |
| 360 |
|
| 361 |
= 1.4.1 = |
| 362 |
* Added: Better group-assignment on the Users admin screen, allows to assign/remove multiple users to/from multiple groups along with a better UI. |
| 363 |
* Changed: Groups requires at least WordPress 3.5 now, although this only affects the group-action functionality on the Users admin screen, the restrict_manage_users action which is now used to render the UI elements needed, was introduced with WordPress 3.5. |
| 364 |
* Added: Extensions box in Options. |
| 365 |
* Improved: Groups section in user profile with added description. |
| 366 |
|
| 367 |
= 1.4.0 = |
| 368 |
* Added: Groups > Groups > Add / Edit group screens, allow to assign/modify the capabilities assigned to the group. |
| 369 |
* Added: Groups > Groups screen, allow to assign/remove multiple capabilities to multiple groups. |
| 370 |
* Added: Groups > Groups screen, allow to delete multiple groups as a bulk action. |
| 371 |
* Added: Groups > Capabilities screen, allow to delete multiple capabilities as a bulk action. |
| 372 |
* Improved: Groups > Options screen, using searchable select instead of checkboxes to enable capabilities for access restriction. |
| 373 |
* Improved: In user profiles, using a searchable select to modify group assignments. |
| 374 |
* Improved: Reduced the footer text in groups admin sections. |
| 375 |
* Improved: Admin CSS to make better use of screen real-estate and more coherent appearance with the new UI additions. |
| 376 |
|
| 377 |
= 1.3.14 = |
| 378 |
* Added the option to quick-create group and capability within the access restriction meta-box. |
| 379 |
* Added the option to show groups granting access per capability in the access restriction meta-box. |
| 380 |
* Added the quick-create field to the access restrictions meta-box which allows to create group & capability on the fly. |
| 381 |
* Added [Selectize.js](http://brianreavis.github.io/selectize.js/) and using it in the access restrictions meta-box instead of checkboxes. |
| 382 |
* Improved the Groups > Options screen using a Selectize-based selection of capabilities that are enabled for access restriction. |
| 383 |
|
| 384 |
= 1.3.13 = |
| 385 |
* Fixed duplicate postmeta created when saving access restriction capabilities for a post. |
| 386 |
* [groups_can] and [groups_can_not] now accept multiple capabilities separated by comma. |
| 387 |
* WordPress 3.6.1 compatibility checked. |
| 388 |
|
| 389 |
= 1.3.12 = |
| 390 |
* WordPress 3.6 compatibility checked. |
| 391 |
* Fixed table appearance for capabilities and groups admin sections when there are no results. |
| 392 |
|
| 393 |
= 1.3.11 = |
| 394 |
* Fix: Access restriction capabilities must be disjunctive. |
| 395 |
* Added: List of groups can be shown in user profiles on the back end and group assignments can be edited by group admins. |
| 396 |
* Improvement: Groups shown for users on the Users screen are sorted by name. |
| 397 |
|
| 398 |
= 1.3.10 = |
| 399 |
* Fix: Under certain conditions with caching involved, capabilities were not correctly retrieved. Thanks to Jason Kadlec who [reported the issue](http://wordpress.org/support/topic/nasty-error-with-latest-version). |
| 400 |
* Improvement: Related to the above fix, improved the way how *_deep properties are retrieved on cache misses, resulting in slightly better performance. |
| 401 |
* Fix: Added a missing text domain. |
| 402 |
* Improvement: Added help icon when user has no access restriction capabilities. |
| 403 |
* Fix: Redirecting after group action in users screen to end up with a clean admin URL. |
| 404 |
|
| 405 |
= 1.3.9 = |
| 406 |
* Fix: added filter hooked on posts_where motivated by pagination issues - the posts must be filtered before the totals are calculated in WP_Query::get_posts(). |
| 407 |
* Improvement: modified the signature of the the_posts filter method in Groups_Post_Access to receive the $query by reference |
| 408 |
* Improvement: a substantial improvement on overall performance is achieved by caching user capabilities and groups |
| 409 |
* Fix: access restriction boxes showing capabilities that the user should not be allowed to set to restrict posts |
| 410 |
* Fix: resolve user-capability when a capability is deleted |
| 411 |
|
| 412 |
= 1.3.8 = |
| 413 |
* Fix: using substitute wp_cache_switch_to_blog instead of deprecated function wp_cache_reset when available (from 3.5.0) |
| 414 |
* Fix: don't show access restriction meta box on attachments, the option is added with the attachment fields (3.5 uses common post edit screen but save_post isn't triggered on attachments) |
| 415 |
* Improvement: limiting choice of access restrictions to those the current user has |
| 416 |
* Fix: restrict access to edit or delete posts based on the post's access restrictions |
| 417 |
* Feature: added option to refresh capabilities |
| 418 |
* Fix: replaced use of get_user_by() (memory leaks on large user sets) with query & added batch limit when adding users to Registered group on activation |
| 419 |
|
| 420 |
= 1.3.7 = |
| 421 |
* Fix: missing argument for meta box when saving a post |
| 422 |
* Fix: Groups conflicting with other plugins adding columns to the Users screen (in the manage_users_custom_column filter) thanks to [Erwin](http://www.transpontine.com) who spotted this :) |
| 423 |
|
| 424 |
= 1.3.6 = |
| 425 |
* Replaced call to get_users() with query to avoid memory errors on activation with large users bases. |
| 426 |
* Provided a default value for a method in Groups_Access_Meta_Boxes to avoid issues with other plugins or themes. |
| 427 |
|
| 428 |
= 1.3.5 = |
| 429 |
* Fixed out of memory issues with large user bases on Users > All Users page. Thanks to [Jason Glaspey](http://www.jasonglaspey.com) who spotted the issue :) |
| 430 |
|
| 431 |
= 1.3.4 = |
| 432 |
* WP 3.5 cosmetics |
| 433 |
|
| 434 |
= 1.3.3 = |
| 435 |
* WP 3.5 compatibility http://core.trac.wordpress.org/ticket/22262 |
| 436 |
|
| 437 |
= 1.3.2 = |
| 438 |
* Fixed capabilities cannot be added or removed from groups in localized installations |
| 439 |
|
| 440 |
= 1.3.1 = |
| 441 |
* Added users property to Groups_Group |
| 442 |
* Moved tests out of core folder |
| 443 |
* Fixed missing $wpdb in Groups_Group's getter |
| 444 |
* Added group filters on users admin section |
| 445 |
|
| 446 |
= 1.3.0 = |
| 447 |
* Added feature that allows to show access restrictions depending on post type |
| 448 |
* Added support for access restrictions on Media |
| 449 |
* Fixed issue, removed access restrictions offered on Links |
| 450 |
|
| 451 |
= 1.2.5 = |
| 452 |
* Added Spanish translation |
| 453 |
|
| 454 |
= 1.2.4 = |
| 455 |
* Minor improvements on Options screen |
| 456 |
* Added show="users" option to [groups_group_info] shortcode which lists user logins for users in a group - rather experimental as it doesn't offer any sorting, pagination, linking or other options |
| 457 |
|
| 458 |
= 1.2.3 = |
| 459 |
* New shortcode [groups_join group="..."] lets a user join the given group |
| 460 |
* New shortcode [groups_leave group="..."] lets a user leave the given group |
| 461 |
|
| 462 |
= 1.2.2 = |
| 463 |
* Revised styles |
| 464 |
* WordPress 3.4 compatibility |
| 465 |
* Dropping support for WordPress < 3.3 |
| 466 |
* Help uncluttered. |
| 467 |
|
| 468 |
= 1.2.1 = |
| 469 |
* Reduced files loaded on non-admin pages. |
| 470 |
* Added Lithuanian translation. |
| 471 |
* Changed help to use tabs. |
| 472 |
|
| 473 |
= 1.2.0 = |
| 474 |
* Access control is no longer restricted to the groups_read_post capability: now any capability can be used to limit access to posts so that different groups can be granted access to different sets of posts. |
| 475 |
|
| 476 |
= 1.1.5 = |
| 477 |
* Added shortcode & API functions [groups_user_group] / [groups_user_groups] that allows to show the list of groups the current user or a specific user belongs to |
| 478 |
* Added shortcode & API functions [groups_groups]to show the site's list of groups |
| 479 |
* Class comments. |
| 480 |
|
| 481 |
= 1.1.4 = |
| 482 |
* Reduced plugin admin footer. |
| 483 |
|
| 484 |
= 1.1.3 = |
| 485 |
* Added safety & warning to test page. |
| 486 |
|
| 487 |
= 1.1.2 = |
| 488 |
* Tested on WP 3.3.2 |
| 489 |
|
| 490 |
= 1.1.1 = |
| 491 |
* Multisite: Fixed (removed) conditions that would only make Groups act on public and non-mature sites |
| 492 |
* Multisite: Adding add/remove to group only on sites', not network users admin screen |
| 493 |
* Multisite: Added constraint in user_register hook checking if the user is a member of the blog |
| 494 |
|
| 495 |
= 1.1.0 = |
| 496 |
* Added Groups menu to network admin |
| 497 |
* Added option to delete plugin data for all sites on multisite installations; removed option for individual sites |
| 498 |
* Improved activation and deactivation for network installs |
| 499 |
* Increases column sizes on capabilities table and fixes cut-off capabilities delete_published_pages and delete_published_posts |
| 500 |
|
| 501 |
= 1.0.0-beta-3d = |
| 502 |
* Fixed issues caused by an excessively long index for the capability DB table. |
| 503 |
Some installations wouldn't work correctly, showing no capabilities and making it impossible to add new ones. |
| 504 |
* Taking into account blog charset/collation on newly created tables. |
| 505 |
|
| 506 |
= 1.0.0-beta-3c = |
| 507 |
* Groups shortcodes now allow nesting. |
| 508 |
|
| 509 |
= 1.0.0-beta-3b = |
| 510 |
* Fixed admin override option not being updated |
| 511 |
* DB tables checked individually to create (motivated by case of all but capability table not being created) |
| 512 |
|
| 513 |
= 1.0.0-beta-3 = |
| 514 |
* Groups wouldn't activate due to a fatal error on WP <= 3.2.1 : is_user_member_of_blog() is defined in ms-functions.php |
| 515 |
* Added [groups_group_info] shortcode |
| 516 |
|
| 517 |
= 1.0.0-beta-2 = |
| 518 |
* Increased length of capability.capability, capability.class, capability.object columns to support long capabilities. |
| 519 |
* Improved admin CSS. |
| 520 |
|
| 521 |
= 1.0.0-beta-1 = |
| 522 |
* This is the first public beta release. |
| 523 |
|
| 524 |
== Upgrade Notice == |
| 525 |
|
| 526 |
= 1.10.1 = |
| 527 |
This release fixes the French translation and adds some administrative actions and filters. |
| 528 |
|