itthinx / groups

Groups provides group-based user membership management, group-based capabilities and content access control. It integrates standard WordPress capabilities and application-specific capabilities along with an extensive API.
GNU General Public License v3.0
49 stars 35 forks source link

=== Groups === Contributors: itthinx, proaktion Donate link: https://www.itthinx.com/shop/ Tags: groups, access, access control, member, membership Requires at least: 6.0 Tested up to: 6.6 Requires PHP: 7.4 Stable tag: 3.2.1 License: GPLv3

Groups is an efficient and powerful solution, providing group-based user membership management, group-based capabilities and content access control.

== Description ==

Groups is designed as an efficient, powerful and flexible solution for group-oriented memberships and content access control.

It provides group-based user membership management, group-based capabilities and access control for content, built on solid principles.

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.

Enhanced functionality is available via Official Extensions for Groups.

Documentation

The official documentation is located at the Groups Documentation pages.

Features

User groups

Groups hierarchy

Group capabilities

Access control

Access to posts, pages and custom post types can be restricted by group.

If access to a post is restricted to one or more groups, only users who belong to one of those groups may view the post.

Fully supports custom post types, so that access to post types such as products or events can easily be restricted.

Easy user interface

Sensible options

Framework

Multisite

Extensions

Enhanced functionality is available via official Extensions for Groups.

Groups is a large project that is providing essential functionality to tens of thousands of sites since 2012. By getting an official extension, you help fund the work that is necessary to maintain and improve Groups.

Feedback

Feedback is welcome!

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.

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. Many thanks!

Stay informed or contribute

Follow @itthinx on Twitter and GETTR for news related to Groups and other plugins.

Get development notifications, contribute code or open issues at the repository on GitHub.

Translations

Translations have been contributed by many from the WordPress community, via the GitHub repository Groups, the section for Groups on Translating WordPress or as direct contributions.

This includes translations from the following contributors and many others to ...

Brazilian Portuguese by Walter Jaworski, Eric Sornoso, Dutch translation by Carsten Alsemgeest, French translation by Stéphane Passedouet, German translation by itthinx, Lithuanian translation by Vincent G, Spanish translation by Juan Amor, Swedish translation by Andréas Lundgren.

Many thanks for your help!

== Installation ==

  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.
  2. Enable the plugin from the Plugins menu in WordPress.

== Frequently Asked Questions ==

= Where is the documentation? =

The official documentation is located at the Groups Documentation pages.

= I have a question, where do I ask? =

For questions directly related to Groups, you can leave a comment at the Groups Plugin page.

= How do I restrict access to a post? =

Let's assume you want members of the Premium group to be able to view some restricted posts.

In both cases, it doesn't matter if the Premium group already exists or not, if it doesn't, it will be created automatically.

If the Premium group already exists and you want to protect one or more existing posts in bulk, go to Posts, select all posts you want to protect and choose Edit in the Bulk Actions dropdown. Now click Apply, select the Premium group and click Update.

After you publish or update your posts, only members of the Premium group will be able to see them.

= I want Advanced and Premium members, where the Premium members can access everything that Advanced members can access. How can I do that? =

Example: Advanced and Premium members

  1. Go to Groups > Groups > New Group and add two new groups, let's call them Advanced and Premium - select Advanced as the Parent for the Premium group.
  2. Now create an example post that only members of the Advanced group should be able to access and choose the Advanced group in the Read field of the Groups box.
  3. Create another post for members of the Premium group and choose the Premium group for that post.
  4. Assign test users to both groups, log in as each user in turn and see which posts will be accessible.

= 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? =

Example: Green and Red members

  1. Go to Groups > Groups > New Group and add two new groups, let's call them Green Members and Red Members
  2. Now create an example post that only members of the Green Members group should be able to see and choose the Green Members group in the Groups box.
  3. Create another post for Red Members and choose the Red Members group for that post.
  4. Assign a test user to each of the groups, log in as one of them and you will see that the member of the Green Members group will only have access to the post protected by that group but not to the post protected with the Red Members group and vice-versa.

= Are access restrictions for Custom Post Types (CPT) supported? =

Yes. Access restrictions can be turned on or off for specific CPTs on the Groups > Options page.

= How can I show groups that users belong to on their profile page in the admin section? =

Go to Groups > Options and enable the option under User profiles.

= Developers ... aka ... What about Groups' API? =

The Groups plugin provides an extensive framework to handle memberships, group-based capabilities and access control.

The API documentation page is available at API.

Also refer to the official Groups Plugin page to post your questions and the Documentation pages for Groups.

== Screenshots ==

See also the Groups Documentation pages and the Groups Plugin page.

  1. Groups - this is where you add and remove groups and assign capabilities to groups.
  2. Capabilities - here you get an overview of the capabilities that are defined and you can add and remove capabilities as well.
  3. Users - group membership is managed from the standard Users admin view.
  4. Filter the list of users by one or more groups.
  5. Add users to groups or remove them in bulk.
  6. Groups a users belongs to shown in the user profile.
  7. Filter posts by groups.
  8. Add or remove access restrictions based on groups in bulk.
  9. Restrict access on pages and posts (and other custom post types) ... you can restrict access to users who are members of one or more groups.
  10. A post restricted to members of a Premium group only.
  11. 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.
  12. 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.
  13. Options - you can adjust the plugin's settings here.
  14. More options.

== Changelog ==

For the full changelog see changelog.txt.

== Upgrade Notice ==

This release has been tested with the latest version of WordPress.