Your cart is currently empty!
Groups
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.
Groups is a WordPress plugin that 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.
Documentation
The official documentation is located at the Groups Documentation pages.
Features
User groups
- Supports an unlimited number of groups
- Provides a Registered group which is automatically maintained
- Users can be assigned to any group
- Users are added automatically to the Registered group
Groups hierarchy
- Supports group hierarchies with capability inheritance
Group capabilities
- Integrates standard WordPress capabilities which can be assigned to groups and users
- Supports custom capabilities: allows to define new capabilities for usage in plugins and web applications
- Users inherit capabilities of the groups they belong to
- Groups inherit capabilities of their parent groups
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.
- Built-in access control that allows to restrict access to posts, pages and custom content types to specific groups and users only
- 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 –
Shortcodes: , - Control access to content by capabilities: show (or do not show) content to users who have certain capabilities –
Shortcodes: , - Blocks: The Groups Member block allows to restrict the visibility of its content to members of selected groups.
The Groups Non-Member block hides its content from members of chosen groups.
The blocks can be nested to provide multiple layers of access control to content.
Easy user interface
- Integrates nicely with the standard WordPress Users menu
- Provides an intuitive Groups menu
- Conceptually clean views showing the essentials
- Quick filters
- Bulk-actions where needed, for example apply capabilities to groups, bulk-add users to groups, bulk-remove users from groups
Sensible options
- Enable access restrictions by custom post type
- An optional tree view for groups can be shown when desired
- Provides its own set of permissions
- Administrator overrides for tests
- Cleans up after testing with a “delete all plugin data” option
Framework
- Groups is designed based on a solid and sound data-model with a complete API that allows developers to create group-oriented web applications and plugins
Multisite
- All features are supported independently for each blog in multisite installations
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.
- Groups WooCommerce : Sell Memberships with Groups and WooCommerce – the best Group Membership and Access Control solution for WordPress and WooCommerce.
- WooCommerce Product Search is the essential extension for every WooCommerce store. It provides the best Search Engine and Search Experience for WooCommerce and is compatible with Groups and its access restrictions on products.
- WooCommerce Group Coupons : Automatically apply and restrict coupon validity for user groups. Offer exclusive, automatic and targeted discounts for your customers.
- Groups Drip Content : Release content on a schedule. Content dripping can be based on user account creation, group memberships and specific dates and times.
- Groups File Access : Allows to provide file download links for authorized users. Access to files is restricted to users by their group membership.
- Groups Restrict Categories : Features access restrictions for categories, tags and other WordPress taxonomies, including support for custom post types and taxonomies.
- Groups Forums : A powerful and yet light-weight forum system for WordPress sites.
- Groups Import Export : Provides import and export facilities around users and groups.
- Groups Newsletters : Newsletter Campaigns for Subscribers and Groups, also integrates with WooCommerce.
- Groups Gravity Forms allows to add users to groups automatically, based on form submissions.
- Widgets Control Pro : An advanced Widget toolbox that adds visibility management and helps to control where widgets are shown efficiently.
Get involved
You & Groups
Beta-testers and developers who need to integrate group-based features in their plugins and web applications: please use it and provide your feedback.
Feedback
Feedback is welcome!
If you need help, have problems, want to leave feedback or want to provide constructive criticism, please leave a comment below.
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!
Stay informed or contribute
Follow @itthinx (or on Reddit, Mastodon, … ) 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.
Where to get Groups
Groups is free. You can install it directly from your WordPress dashboard or download it from the Groups plugin page and install it manually.
Comments
2,693 responses to “Groups”
I’m looking for a solution to create a group, add sub-groups, and add users to that sub-group. I need to add custom attributes to that parent group which would then allow me to fill in additional information for each sub-group. I could then query, sort and display information based on those sub-group attributes.
For example, if my organization’s membership is by school but each school has a potential for multiple user accounts. Let’s say I want to create a display to list all the States who have member institutions. I could create a Schools group then create a sub group for each member institution. When I add a user account I could assign them to their appropriate sub-group(s), but in order to pull a query sorted by state I need to collect that information as an attribute of the sub-group.
Is this beyond the scope of your plugin. If it doesn’t currently support adding attributes it doesn’t seem like it would be a difficult hack or future addition. Or, do think this should be addressed another way?
Look forward to your feedback.
Kind Regards,
bkcHi Bradley,
That should work fine with Groups but how you set it up would depend on what you want to control and who should have access. Is this just to restrict content based on a user’s group membership or do you also want to open up administrative access?
Are there a way to remove access restrictions applied to a post after X days? The use case is, that some analysis done are very newsworthy, but only for a short time. Thereafter they can might as well serve as search engine bait 🙂
Hi Thomas, currently not unless you use a mechanism implemented for that for example based on scheduled events. But I find the idea interesting, maybe not part of the core plugin but as an extension.
You would have your first download/sale from me on that extension 🙂
Hi! I’m using Groups with WC Subscriptions/Groups for a client.
I’m sure there must be a way to show a default message in place of restricted content, to unregistered/logged out users. I want to ensure consistency (& ease of use), so want to avoid using the [groups_non_member] shortcode. Are you able to point me in the right direction?
Thanks!
SarahHi,
if you don’t want to use the shortcode, you could create a page with the message, and use Groups 404 redirect plugin.
cheersAntonio – thanks, but that doesn’t seem too user friendly to me. Much easier & less confusing for the user if they just see a message (perhaps with login link) in the place of restricted content, without being redirected.
Presumably it would be pretty easy to have a setting for “Default ‘Content Restricted’ Message” and if specified, show this instead of a blank space (unless [groups_non_member] is used).
For now – and in case it helps anyone else – I’m using a wrapper shortcode as follows (this could of course be adapted to cater for more than one user level):
function hex_protected( $atts, $content = null ) {
extract(shortcode_atts(array(
), $atts));if (current_user_can(“my_user_level”)){
$html = $content;
} else {
$html = ‘This content is for members only. Please log in or register to join.’;
}
return $html;
}add_shortcode( ‘protected’, ‘hex_protected’ );
Yes and no.
In terms of what it does, yes.
But in terms of usability & consistency – no. Using this approach a) the user doesn’t have to remember/bother to add the non-members shortcode, and b) the notice remains consistent across the site.
This would seem like an obvious enhancement to the plugin to me – have a setting: ‘Display default restricted access message’, and then textbox for default restricted access message (allowing links).
We will study it, thanks for the feedback.
I am developing an IOS app that gets content from our WordPress site. We are using Groups. If I log in with a browser I can use JSON API to query things that I want (obviously because I’m logged in). How do I do this from an IOS app. If I issue JSON API I get back no content in the POST field, I’m assuming because I’m not logged in. How do I authenticate Groups in a non browser (aka IOS http requests).
Hi Dan,
Thanks for asking, an API extension as part of the Groups core for this type of requests is scheduled but not available yet.
Hello,
Is there a way to enable groups to apply to certain categories that are visible to both public AND one of the logged-in user roles. (I also bought your Restrict categories plugin)
For eg – I am using them in my WooCommerce site that sells wholesale products. I am using group to disable public from viewing these products and only have them visible to logged-in wholesale user roles.
However, at time we would want to open some products to public, still keeping the same category structure. How can I assign enforced read access to both public AND wholesale?
Thank you, Maryna
Hi Maryna,
If we allow categories to protect disjunctively, i.e. it is sufficient for a user to be a member of a group of one of the protecting categories, then that would solve this requirement. I’ll review this and see if it’s feasible to enhance it that way. Thanks for the suggestion!
Cheers
Hi Kento!
Is there a place I can specify a ping to be sent when a user leaves a group? I manage premium content through a MailChimp newsletter that I see I can automatically add subscribers to when they purchase a subscription (using WooCommerce Subscriptions + Groups + Groups WooCommerce + WooChimp). I’m just looking for a way to unsubscribe a user from a MailChimp List when they leave a group.
Thanks for any help you have!
TorreHi,
you could use action “groups_deleted_user_group” with two parameters: $user_id, $group_id
Or you have available Groups2Mailchimp plugin in codecanyon.
cheersAntonio,
Thanks for the response! I am not sure how to do what you are saying. I don’t see any pace to add any type of action like that. Sorry – could you just give me a little more detail on where I put that data?
Thanks!
TorreYou can use the action “groups_deleted_user_group” to create your own code and set it in your functions.php file. Here you have more information about this.
If you don’t know about programming, you can use the plugin Groups2Mailchimp.
cheersAntonio,
Thanks for the info. I am not seeing a way to remove users from MailChimp that have been removed from a Group. Is that a capability of Groups2MailChimp that just isn’t mentioned on the plugin information page/screenshots?
Yes, this is a capability of Groups2Mailchimp.
HI,
your plugin is very good.
I would like assign role automatically, when the user is assigned to the group and remove the role when i remove the user to the group , but i don’t know if it’s possible. Perhaps with a hook ?
i search issue on lot of forums, but i don’t find …
If someone know an issue,I thank in advance 😉Hi,
you could use actions “groups_created_user_group” and “groups_deleted_user_group” with two parameters: $user_id, $group_id
cheershi,
thanks for your help,i try this but, it doesn’t work, perhaps i hope someting…
function groups_add_role($user_id, $group_id){
$user = new WP_User( $user_id );if($group_id==’2′){
$user->set_role(‘cotisation_ok’);
}elseif($group_id==’3′){
$user->set_role(‘cotisation_ok_limited’);
}else{
$user->set_role(‘cotisation_no’);
}}
add_action(‘groups_created_user_group’,’groups_add_role’, 10, 2);function groups_remove_role($user_id, $group_id){
$user = new WP_User( $user_id );
$user->set_role(‘cotisation_no’);}
add_action(‘groups_deleted_user_group’,’groups_remove_role’, 10, 2);Hi,
your code seems correct,
be sure your roles exists, and use ” instead of ‘ in set_role function.
cheers
Nice plugin, so many extensions and features, something worth checking out.
Thanks Ray 🙂
WooCommerce told me told me to use your product for this situation:
____________________
Person logged in with the following user group:
Dealer: See price from field A only
Distributor: See’s price from field B only
FOB: See’s price from field C onlyAlso we have over 1000 products.
Thanks,
Steve
_____________________
RESPONSE:
Thank you for contacting WooThemes, let me see if I can help you with this.
You would use https://wordpress.org/plugins/groups/ as well for the role set up and have your site set up so that they need to log in to see the site.http://www.woothemes.com/products/catalog-visibility-options/ is the only extension that lets you view the shop without the prices.
_____________________I’m looking for assistance with getting GROUPS set up correctly to accomplish this. I’d be happy to pay premium support but I’m not sure which product is correct for this
Thanks,
SteveHi Steve,
Groups is a free extension, you can install it directly from Plugins > Add New … search for Groups.
You’re mentioning fields in your requirements, it sounds like these should be mapped to prices depending on which group a member belongs to, is that so? If yes, there’s the WooCommerce Group Pricing extension which could be a match for what you want to achieve. I say “could” because I’m not completely sure what you mean by “See price from field … only”.
Does that help?
Cheers
Hello All,
Just wondering if anyone has had a chance to integrate groups with the member system of BuddyPress. We would like to leverage BuddyPress to handle member profiles and user login, but we need groups to restrict access to different parts of the site.
Anyone have any advice?
Hi Ryan,
Here’s an interesting article Create a Premium Social Network with WooCommerce. There are also several mentions of BuddyPress in the comments on this page. I know of some parts where BP and Groups have potential conflicts, for example BP defines some action hooks which Groups also defines.
If you are going to run tests and have questions or feedback, please post them here, it would certainly be interesting to hear.
Thanks Kento!
That is a great resource. Keep building useful products, we sure appreciate it!
How I can do?
If I insert a new user in the back end, he is automatically added to the group “Registered” (Users are added automatically to the Registered group Groups hierarchy)On my site, users register by form inside woocommerce
(because allows me to check email with plug in “WooCommerce Email Verification” )How can I automatically assign new users, activated by woocommerce to the group registered ?
or have you got another solution/plugin to register user and verify the email ?
many thanks in advanceHi,
I have not tried it, but this code should works fine (put this code in your functions.php): http://pastebin.com/v5jLD4wX
cheersIt works perfectly
Thank you!
Hi, I have difficulty using the plugin “group”
I have a website
My goal is to have 2 types of users
1 Registered Users “Custromer”
2 Users who have purchased a product through at least woocommerce (Purchaiser)They will have private access to 2 different pages
– Page 1 Access to registered users’ Custromer “, and those who have purchased a product” Purchaiser ”
– Page 2 access allowed only to users who have purchased “Purchaiser”The regsitrazione to the site is by woocommerce account
and the users will be automatically assigned the role of Customerquestion
How do I make it so that users who register through woocommerce can access the first page? but not on page 2?
How do I set the parameters in the page?
and how can I set that page 2 is accessible only to the group “Purchaser”kind regards
Hi Alessio,
Have a look at Groups for WooCommerce please, I think that’s what you’re looking for.
Cheers
How can I see the Groups my users are in in the WP user meta data?
I want to display a list of all users in ‘Group A’. I have a plugin that will display the list of all users based on any WP user meta data, unfortunately my users’ Group affiliations do not show up in the WP user meta data.
Would the Amr Users Groups (http://wpusersplugin.com/related-plugins/amr-user-plugin-add-ons/amr-users-plus-groups-by-itthinx/) plugin let me do this?
Hi Kenny,
The relationship is not stored as user meta but here’s a solution – add the file to your theme’s root folder (e.g. in wp-content/themes/my-theme/) and at the end of your theme’s
functions.php
add the lineinclude_once 'list-group-users.php';
You can then use this shortcode
[list_group_users group="Registered"]
indicate the desired group name instead of the Registered group as needed.This would be a good addition as a shortcode in the Groups plugin itself, but meanwhile you can use this I hope.
Regarding the plugin you mention, I don’t think it is intended to do that, but show groups info for a user.
Cheers
Thanks so much! I’ll give that a try.
What I really want to do, though, is use the UserPro plugin’s short code to display my users per Group like in this example (which uses the user meta): http://userproplugin.com/userpro/users-table-custom-columns/
Will the solution above give me user meta ‘hooks’ to do this? Or is this any other way you can think of that would get me there?
Thanks again!
This solution is somewhat limited as it is, basically just listing the users. It would need to be extended to allow to show additional info. I’ve taken note of it to see to which extent we can add this to Groups itself. Thanks for the suggestion!
Hi there,
I have some questions:
– Why does the plugin not use wordpress user groups? (I use “Advanced Access Manager” for managing wordpress user groups/capabilities and thats very nice)
– Can you implement a table view of the capabilities like the aam plugin)
– Can you set the paypal plugin to not have a paypal subscription? (Because for subscription the users need a credit card, so a system, where the user is simply devoted to registered user, if he does not pay on paypal a second time, would be a great feature)Thank you
Hi,
#1 There are no “WordPress User Groups” – I created Groups because of the very lack of it and any decent solution availble at the time when I needed it for a project.
#2 Groups has its own.
#3 That’s related to PayPal, but have a look at Groups WooCommerce if you want to have memberships that are limited in time.Cheers
Hi Itthinx,
I’m using Woocommerce with Groups and Groups for WooCommerce.
When i’m visiting a normal page the loading time is good, but when i’m visiting a restricted Groups page the load time is about 10 seconds.
Any idea how to solve this?
Thanks!
Hi,
please give us an url to have a look.
cheersHi Antonio,
Is het possible to have a Skype conversation? The restricted page is a membership page and it’s not possible to post a url or login here.
Cheers
Hi,
you can send us the data to support at itthinx dot com (please indicates this comment in the email)
cheers
Hi Team,
Hi all,I love your plugin “groups” and I also use “groups 404” which redirect to specific page.
Well, when my subscribers go to http://www.mywebsite.com/story/ : if they are no login else they are redirect to http://www.mywebsite.com/my-account/
Login form appears in page
but when they are login they stay on page http://www.mywebsite.com/my-account/ … I would like they return to previous page : http://www.mywebsite.com/story/ to see and read the content.I’ve find solution whith S2member but nothing for Groups : http://www.s2member.com/forums/topic/redirect-back-to-previous-page-after-login/
Please, can you help me ?
I would like to use your plugin to buy subscription extension of groups.Thanks, 🙂
FabiHi Antonio,
thanks for your help.
yes I’ve tested this solution, but it doesn’t work.I’ve try this : http://wordpress.stackexchange.com/questions/66974/login-redirect-to-previous-page
And this : http://wordpress.stackexchange.com/questions/129618/how-to-redirect-new-wordpress-user-to-previous-page-after-registering
without success…I think it’s because of groups plugin
thanks,
FabiHi,
please give us your url (and the destination url used in Groups 404) to have a look.
cheersHello Antonio,
For example, this is a page with group’s access restriction : lescogiteurs.fr/outils-membres-adherents/
and the destination URL used in groups 404 is : lescogiteurs.fr/mon-compte/ (with login form at the end of page)Thanks
Hi,
I don’t know how is created your login form. If it uses wp_login_form, you can add ‘redirect’ attribute (http://codex.wordpress.org/Function_Reference/wp_login_form).
cheers
Nevermind that last comment I left here. Found what was going on and all is well.
Thanks Bob, would you mind sharing the cause?
Bob,
I have the exact same set-up (WPEngine, Woocommerce, Groups, Groups 404 Redirect, Groups for WooCommerce) and am experiencing the same 502 error problem.
Would love to know how you solved it!
Mike
A bit ago I was having some issues with the 404 redirect plugin. We talked here and shortly after that you pushed out an update, which seemed to solve the problem. But now there is another issue. I first contacted Woo and then WPEngine, but we found out it was a plugin problem. Here’s what is going on.
Using WooCommerce with
Groups for WooCommerce
Groups
Groups 404 redirectIf you go to this page and click on http://bobwp.com/member-login/
you get a “502 bad gateway” error. Now at other times you get “This webpage has a redirect loop.Now if I deactivate the Groups 404 redirect I still get “”This webpage has a redirect loop.
If I deactivate the Groups plugins it works fine.
Obviously if I have to I could remove the 404, but I do need the groups plugin. My members cannot retrieve their password so that is a problem.
any thoughts?
BTW I can’t delete groups_read_post from Groups Options. It keeps reappering in the suggestions section.
This is a basic capability that can’t be deleted.
cheers
Hello Kento,
I was wondering about the Registered-Group. Is it an automatic group? I see it in your examples and it seams like it can always be used to see if somebody is logged in or not.
I was trying to apply it to protect a page and it wasn’t autosuggested. Then I used the box to create groups and capabilities in one go to create it. But I am wondering how to handle this right!How can I protect a page against
onnon logged in users?Hi,
yes “Registered” group is assigned to logged in users.
If you need to restrict a page to non logged in users, you can add ‘groups_read_posts’ capability to this page.
cheers
Hi Kento,
great Plugin you made 🙂
How can I do that (if possible with your plugin): there are Menu-Points (Top-Navigation), I only want to show to Non-Logged-In-Users. As soon, as User is logged in, those Menu-Points should disappear.
What I learned so far: Menu-Points disappear, when Access-Restriction does not allow the User-(Group) to see a page/post.
Is there a way, to do that…?
Thanks in advance,
Rainer.Hi,
I hope that I have an issue that is simple to solve:
I am new to WordPress and use the groups plug-in to handle file downloads for different user groups, mostly with the [groups_can_access_file file_id="x"] construct.
I get an empty line on the page, if the user logged in is not allowed to access the file.
How can I get rid of this line, or rather don’t get the empty one displayed?
– We have numerous separate files, so the amount of empty lines sums up and does not look too pretty
– Sorry if this a question I could have easily answered by myself, I tried and searched and found nothingThanks in advance
Hi,
The empty lines sounds like WordPress is adding them between each shortcode instance. You can try to reduce the number of line breaks, and also use this depending on the user group:
[groups_member group="abc"]Show stuff for members of the abc group only.[/groups_member]
Thanks, works good for me
Kento,
The only things on the site that are restricted are the products, but product categories have no restrictions. No items in the menu have restrictions either.
The following link is a screenshot of what it should look like (left image) & what it does look like (right image) when logged out. To me it looks like the problem occurs with the “Hourly Projects” category, but I don’t see a problem on the backend:
http://butlerwebanddesign.com/development/lawvex/wp-content/uploads/2014/06/Screenshot.jpg
Thanks, I’ve created a test account but am getting the same menu as when not logged in. I think what you see is related to how the menu is presented to the admin role, not based on whether the user is logged in or not. I would recommend to check what exactly determines how your menu is presented and if there is any plugin conflict, Groups would rather be involved in reducing the amount of items accessible to the user when not logged in instead of offering more which is what you’re getting here.
I have tested it and found that the website works fine when the groups plugin is disabled.
Here is a list of plugins being used:CategoryTinymce, Contact Form 7, Delete All Comments, Go-Responsive Pricing & Compare Tables, Groups, Groups 404 Redirect, Groups WooCommerce, LayerSlider WP, Login With Ajax, Pricing Table, Revolution Slider, Simple Local Avatars, Viral Lock, WooCommerce, WooCommerce Authorize.net CIM Gateway, WooCommerce Product Add-ons, WP Ultimate Search, YITH WooCommerce Featured Video.
Are there any known issues with these plugins?
Hi David,
There’s none which sounds a bell … have you tried with a default WordPress theme to see if it shows the behavior?
Kento,
Yes I have and I still have the same issue, the only time the menu works correctly is when I disable the Groups plugin.
Thanks for checking David. That’s odd, I haven’t seen this before though and to be honest don’t have a clue on why that could happen on your site. I can only think of a plugin conflict then. You could try to disable plugins until it ‘goes away’ and reenable individually until this happens, that usually gives a clue to where the conflict originates, doesn’t solve it though. Another thing that might be involved is caching …
That is one of the first things I did, and the error occurs once I enable the Groups plugin. I’m as lost as you are on this one lol. I believe it happened after a few plugins were update, but I don’t remember which ones were updated other than WooCommerce & Jetpack I think was one.
Hi,
If you want, you can send us dashboard admin access to support at itthinx dot com and we’ll have a look.
cheersJust to have a record on what I’ve found here as well, with the admin override enabled under Groups > Options this gave the impression that things change when Groups is activated but in fact it’s due to the admin permissions being more ample. After disabling that option and also checking with a simple test account, things look the same all over so it’s definitely not related to Groups. My suggestion is to try disabling all plugins and using a default theme and gradually enabling things until the issue comes up.
Is there any way to have a variable product where one variation is a 2 year membership and the other is a lifetime membership? I cannot figure it out…
Hi Sean,
With variations you can only set a duration that applies in common to all variations, although the groups can be set individually on the variations. For this case you need to define two different products so that you can indicate a duration on one and leave the other one unlimited.
Hello,
I am having an issue with my site which is moving items around in the menu when not logged into the site. For Example when I am logged in my menu displays: Search The Site -> Attorney Forms -> Hourly Projects -> 7 Post Category tabs. When I am not logged in it moves those 7 post category tabs to the very end of my main menu after contact. I hope that makes sense.
Just to clarify I am not trying to restrict access to menu items or categories. I am only trying to get my menu to display correctly when I am logged out. I found that it is this plugin causing the issue, when I was disabling plugins.
Any help with this would be greatly appreciated. Thanks in advance.Hi David,
Are any of these items restricted and at what point in the menu hierarchy please?
Hey there,
the problem i’m having with this plugin involve product categories. We have several Woocommerce product categories that should not be displayed in the shop front end to normal users. Only logged in users with a specific group should see those categories. It seems I can’t get this to work, am I doing something wrong or is this just not supported?
When I click on the categories, the products are hidden (so it works somewhat).
Kind regards,
Bert
Hi Bert,
Have you seen Groups Restrict Categories? It seems it would match your requirements.
Cheers
I’m rewriting my site and importing various info in from the previous site, but I don’t see a way to export/import the groups and the users in those groups.
Is there a way to do this?
Is there a way to do it without spending out any money for now? I just went way over budget on the site already, so cannot spend any more for now.
Hi,
you could migrate your database or copy wp_groups_xxxx, wp_users and wp_usermeta tables (before modifying the database makes a backup).
cheers
Hi there
We just bought the Groups Restrict Categories extension. Is there a way to restrict the visibility of the categories in the menu based on the user group?
For instance if I have 3 categories (General, Premium, Platinum) and 3 groups associated to those categories (also, general, premium, platinum) restricting post content, is it possible to only show the category for the logged in user in the menu, based on his group?
As in only show Premium in the menu if a user from the group premium is logged in.
Currently all 3 categories show up in my menu, but only content from premium is displayed.
Hi, you could use the wp_get_nav_menu_items filter and Groups_User_Group::read() to filter these out based on the user’s group membership.
Ah right, will check it out, thanks!
Hi, I’ve used Groups some on several projects and find it very powerful. However, there’s 1 thing it doesn’t do (at least as far as I can tell) that I’d really like it to: restrict who can edit particular content in the admin.
The “Enforce Read Access” makes it very quick and easy to use to control access on the front-end. But I’m looking at the possibility of a project where I’d need to control access on the back-end. For example people in the HR department could only edit pages assigned to their “HR” group. Is there a way to do this that I don’t know? If not, is there any chance that it’s coming soon, or will be available as a plugin?
I found Press Permit, which overlaps group in a lot of features. And one of it’s addon plugins allow it do do what I describe: http://presspermit.com/tutorial/page-editing-exceptions/ However, it seems overly convoluted and complicated. I’m hoping for something more straightforward and simple like what Groups currently does where I can quickly add a page to a Group or capability.
Hi Tevya,
That could be solved if we add similar access restriction facilities for who can edit a post. Currently we have only read access restrictions as you have correctly described, if we add a “Enforce Write Access” feature I think it would meet your requirements. I’ll have a look at this.
Cheers
PS : I started watching the video but it managed to loose my attention, really too complicated to simply restrict editing a page.
Thanks for considering it! This would be incredibly awesome and make Groups THE go-to plugin for all advanced user/content access administration on WordPress.
Haha! I found the video very dry as well. It’s way over-complicated from what it needs to be. I’m really hoping you’ll add this to Groups!
Certainly worth considering and I can see its usefulness in extending it to taxonomies as well.
Curious if there’s any progress/update here as well…? Still would be very helpful for a large project we’re looking at. And I’m certain it would be very useful to a great number of people/projects. I think it would make an excellent paid add-on plugin. Projects needing that kind of CMS functionality should be happy to pay for it.
Many thanks Tevya, it’s great to see interest in that and I agree on what you suggest. A premium extension is what is currently being worked on.
Excellent! That’s very exciting. Thanks for letting me know.
Is there a way to give a Role or Group the capability of adding/removing users from groups, without giving them ability to edit groups? It seems like there should be a capability between groups_access and groups_admin_access.
Currently not, but the suggestion sounds reasonable. I’ll have a look and see if we can add dynamic capabilities based on group names.
Thanks for considering it! Seems like you could do something like this, with the capabilities.
groups_access = View Group Membership/Tree
groups_assign = Allow user to assign other users to groups
groups_admin_access = Edit GroupsMany thanks, I’ll take that into account as well.
This would be a very helpful for the project I was asking about another feature in the next comment down. Combining these 2 would give WordPress all the functionality of other CMS’s when it comes to user access to, and editing of, content. Groups would be the Ultimate plugin for content control on WP.
Thanks for your feedback on that, I think you’re right. This is something that’s missing in WordPress and providing a flexible way to control write and read access to content is a key component.
I’m just curious if there’s any update or progress on this? Still would be very helpful for a large project we’re looking at.
Yes but not ready to be released yet 😉
Hi, I’m having difficulty locating the meta fields for the groups so that i can import a large number of posts and automatically assign them to the correct groups. I exported the xml for a correct record so i can see how it’s set up and i’m puzzled because the groups-groups read access meta shows up as separate lines of code – with other meta inbetween.
I have managed to import one group to the groups-read-access, but what i’m trying to do is import mulitple groups and i was expecting to see a string such as “group a”;”group b” etc. I just don’t know enough about code to work this one out myself i’m afraid.
Hoping you can help, mnany thanks.i see from my post above that i have no idea how to post examples of code into this window – it looked find until i hit post. maybe you can email me direct or post instructions. Sorry…
No problem 🙂 With the description you provided I understood what you meant.
Hi, I have an importer plugin that i am using to import a large number of posts and pages to my website. I am able to populate the groups access restrictions field using the importer but i’m having trouble identifying the correct meta field to post to. I have been able to add one group/capability to the field, but not multiple.
I exported the xml code from a post i had entered manually to see how a “correct” post looks and i’m very confused about why the groups read post meta key shows up twice and several lines apart. I was expecting to see something like this
groups-groups_read_post
–(ie, two values, listed one after the other, and with a separator such as ; or “;” for example)
BUT instead i see this- two separate entries with other meta keys in between (note i deleted a couple of the inbetween lines as they contained data i need to keep private) :
_x_audio_embed
––
groups-groups_read_post
––
_x_post_layout
–
–
_x_video_embed
–
groups-groups_read_post
–
Can you give me any tips whatsoever to help with this?
If it isn’t possible to post multiple groups/capabilities to this field, is there an intention in future to enable bulk application of groups settings to pages and posts from the main “pages”/”posts” windows, as you can for users with the “add to group” function?
Last question – i see your new importer for bringing in large numbers of users. Does it also bring in groups/capabilities? I have a large number to set up and it seems i have to do this manually?
thanks for your help
Hi Sarah, the “groups-groups_read_post” meta data will have as many entries for the post as there are access capabilities related to it. That’s the way WordPress post meta is saved when there are multiple values instead of a single one.
Regarding the importer plugin, we’re currently working on adding these import and export features.
I’m still struggling with this, sorry.
I’m importing 500 “posts” and each has several groups that are allowed access.
Can you tell me what the “separator” might be to import multiple values? For example, with a meta that includes 4 currencies i create a string and the placement of quotations and commas etc is critical to the ability for the importer to map the data to the correct fields.
Also, do i need to specify both the group and the capability? I had assumed that if i imported the groups for each post then the capabilities would be automatic?
Last question – is it possible to make all posts hidden unless a specific group is authorised? I thought it worked the opposite way – where everyone can read the post unless you specify certain groups? It seems that at some point in the last few days i have managed to make all 500 posts hidden, despite there being no information in the groups/capabilities field top right of screen. It’s a good thing, but i don’t know how i did it. It’s also only for posts – my pages are all wide open, again a good thing but i’m so lost…
If the plugin you use to import the posts reads the postmeta correctly, then you should see several values imported and reflected as entries in the postmeta table, for each post.
For example, if a post has two access restriction capabilities related, you would have two entries in postmeta. The importer should recreate this automatically, given that postmeta is imported correctly.
Regarding your second question, you can simply use a new capability and assign it to a group and assign that capability to all posts. You can use that same capability on pages as well. There’s also Groups Restrict Categories which can be used to handle this by category.
Great advice, thank you. Using Categories is proving much easier for me and no posting to the meta required.
cheers, Sarah
Hi, I have eBooks I want to sell on WooCommerce Subscription. I’m getting my head around the setup for Groups and I’ve got the product side of it sorted, but I’m confused about how to protect my content.
My eBooks sit on my server (http://mydomain/ebooks/title/) and the subscription allows the customer access to visit a page that has a link to that location. Other than an iframe embedded in a page, is there any way to mask or hide the url? My customers don’t download the eBook permanently, they simply visit the page whenever they want to view the book, so it’s important they can’t simply save the location and cancel the renewal.
My current (non-WordPress) system requires an iframe but i’m hoping to find an alternative as i have 500 titles and would need to make a page for every single one if I move across to your plugin. Any advice?
thanks for your help
Hi Sarah, you could protect the files by using Groups File Access and its service key feature (see the notes for the [groups_file_access_service_key] shortcode) or temporary URLs through a service like Amazon S3 (see REST Authentication).
Hi Ive installed the groups plugin and managed to hide certain posts from certain groups but now I want to restrict media items, when i uploaded a pdf i was given the option to add the groups_read_post to the file but it didn’t restrict or permit anything. Do I need to add a different capability, if so which one?
Thanks
MarkHi Mark,
Access to the URL that points to the resource related to a media item is not protected, what is protected is the media post itself. If someone knows the resource’s URL, it can still be accessed. You can consider using Groups File Access to protected direct access to files though.
Cheers
[16:56:19] Marko Perutovic – mapero: Hello.
we have affiliate enterprise and we just bought groups plugin to give different commissions in base of a product.
but it is not working. we have tried many variations and set up everything that is shown in photos but it still not working. It just give commission 0 (zero).Could You check it out as we have big urgency to make it working.
Also I am trying to access forum but the password resset is not working. the mail is not sent to the
my inbox at desantiservices(at)gmail(dot)com.
We have urgency to make groups plugin working and we also sent an email to You three days ago.
we have bought plugin groups from http://eggemplo.com/plugins/affiliates-groups/ but the percentages are not working. Its always Zero.Thanks in advance.
Hi,
please send us dashboard admin access to support at itthinx dot com (please indicate this comment in the email).
cheers
My website has been running extremely slowly, and I asked WPEngine (my host) about it and they found that my Groups plugin was causing and error thousands of times a day. Have you seen this or have any idea what could be causing this? I’m running Groups 1.4.10 along with Groups WooCommerce 1.5.3 and WooCommerce Subscriptions 1.4.10.
Here’s the error..
[error] [client {IP}] LONG QUERY (2295 characters long generated in /{…}/wp-content/plugins/groups/lib/core/class-groups-user.php:315):
SELECT capability_id, capability FROM wp_groups_capability c WHERE capability IN … (edited see full: http://pastebin.com/YiNWqKFE )
Thanks Sean, I’m already looking into it.
Hey Kento,
WPE is pointing out our Groups plugin as the culprit for slowing down our site as well…
Could it be related to the amounts of groups/capabilities we have? Each page is running a query for each group, even when there is nothing related to groups on that page.
Any insighs?
Thanks so much!
Hi Maeve,
Could you provide some detail on why it is assumed that Groups is slowing down the site please? Also, do you have Object Caching enabled on the site? If not, please enable Object Caching, some queries can benefit from that.
Let me know about the details on that please, I appreciate the feedback. In case it might be related to your site, there are some queries which show up as “LONG QUERY” errors in WP Engine’s logs (see Long Query and Killed Query in Error Logs) – that these show up as errors is quite misleading because there are queries that are certainly valid and optimal, even though they are longer than the character limit assumed by WP Engine to classify queries as “long”.
Cheers
I site is extremely slow, and I worry that this could be caused by Groups, though it is now an integral part of the site.
Are there any plugins that you suggest I use for object caching?
Hi Joe,
If your site is hosted on WP Engine you can enable Object Caching under my.wpengine.com > Installs > Utilities > Cache options > Object caching.
Otherwise I would recommend W3 Total Cache.
To check which plugins are involved in the response time of your site, you can run tests with P3 and check the detailed results which give an insight on how resource-hungry each plugin is.
Hey there,
Is there a shortcode, or some method, to show what the currently logged in user has access to based on their group membership? I didn’t see anything in the docs.Hi Alex,
It depends on what you want to show. For example, you can wrap content in
[groups_member group="Registered"] … lots of stuff … [/groups_member]
and “lots of stuff” can be content generated by another shortcode listing posts for example. Would that help?
Looking for some added functionality. I can get a nice, Tree view from my Admin console. And would like a similar shortcode for posts.
[gropus_groups exclude=”groupname” format=”tree”] For example.
Is there a way I can do this, using the API ? And are there any use cases for a “parent” group. Do child groups, inherit from a parent group?
Hi Sean,
You can use Groups_Utility::get_group_tree() and as a basis, something along the lines of:
add_shortcode( 'my_groups_tree', 'my_groups_tree' );
function my_groups_tree($args,$content='') {
$tree = Groups_Utility::get_group_tree();
// do stuff with the tree, for example remove those you don't want
$output = '';
Groups_Utility::render_group_tree( $tree, $output );
return $output;
}
Hi Kento,
Just purchased the Groups for WooCommerce plug-in as well as installed Groups (great stuff!). I’m having trouble adding my groups to specific pages/posts unless they also have the “read_groups_post” capability assigned to them.
For instance, I created a group called “CAR”, and then created a capability for that group called “access_car_content.” The idea was that anyone who had the “access_car_content” capability would be able to see CAR membership material. I’d like to do this for multiple types of membership; delegating specific content to specific groups.
With this in mind, I created a new page. But it wouldn’t let me add the capability “access_car_content.” Only “read_groups_post.” No option to add a group based on name either, as far as I can tell.
With this restriction in place, I added the “read_groups_post” capability to the “CAR” group to allow CAR members to access the page. The problem is, I want to create multiple members, like CAR, BAR, etc. and only give them access to specific pages/posts. With the current setup I need to give CAR and BAR the capability (“read_groups_post”) to make that content exclusive. The problem being now both CAR and BAR have access to the same content.
Oh my, make sense? I would appreciate any input you may have.
Hi Trever
For the CAR / access_car_content example, you need to enable access_car_content for access restriction under Groups > Options and the user that tries to restrict a post using that capability must belong to a group that has that capability. Add your user to the CAR group for that, you’ll see you can apply the restriction after that.
In the Access Restrictions box, there is also a quicker way to create these, have a look at the second field in the lower part of the box.
Cheers
Hi – does this plugin allow me to hide certain posts/pages from members of a group?
I’m successfully using the plugin to hide content from non-members but…
I’d like to introduce some ad style posts/pages for non-members but would like to hide these (particularly in menus) from people who have bought a membership…
Thanks for any help
Hi,
you can use [groups_non_member] shortcode, but not with access restrictions. Relating to menu items maybe this plugin can help you.
cheersOk – thanks for your help. I’ll check out that plugin. But would be a useful addition to be able to have an access restriction based on non-registered and non-group members so that pages can be hidden from everyone else – would mean you could do a hell of a lot of site membership/marketing which could be turned off to signed up/registered members.
I agree, actually this has been on my @todo list since quite a while.
thanks for the feedback 😉
I was wondering if there is a way to show content to non-logged in users/members and then have it disappear when the user logs in. For example, we have some of the page content only available to logged in members and in its place we show a picture that says “Member Content Only”. Once the member logs in the hidden content appears, but I cannot figure out how to have the picture disappear.
Hi Keith,
[groups_non_member group="Registered"]Visible to those not logged in.[/groups_non_member]
Cheers
I was actually able to track this down to an issue with browser caching. Once you clear the cache it works fine. Any idea why this would happen in IE rather than the others?
IE11 by the way.
Is it possible to assign a specific ‘Group Manager’.
Ie – I have a group called ‘Company abc’ and another called ‘Company xyz’
I’d like a ‘Group Manager’ to be able to have permissions to add users/edit users/etc ONLY for users in ‘Company abc’ and NOT ‘Company xyz’
I’ve looked through some of the docs, but haven’t seen this ability.
It isn’t possible to achieve this to such a fine-grained extent on the admin back end. It would be possible to craft a front end solution using Groups’ API though. For example, using appropriate forms to which access is restricted by using the [groups_member] shortcode.
Hi, I’m using Groups, WooCommerce Groups and Groups 404. I have a page set up to only allow users to view based on capability. The page is displaying properly in Chrome and FF, but is redirected to the specified 404 page in IE even though I have the proper permissions. Has anyone else experienced this issue?
Any help is much appreciated,
Thanks, BenHi,
What IE version are you using?
give us an url and an user to have a look.
cheers
We just ditched WishListMember for Groups (and Groups WooCommerce and Groups Gravity Forms) and are LOVING it. I’m wondering if anyone has a solution for this challenge.
For each month that someone remains a member of our “Pro” group, we want them to gain access to another month’s worth of content. That content is already assigned to groups like “Jan”, “Feb”, “Mar”, etc. So, what would be IDEAL is if on May 1st, all our active “Pro” members were automatically assigned to the “May” group. The would then forever have access to the May content even if they cancelled their Pro membership in June. So, in short, we only need to deal with automatically ADDING them to a group, never removing them.
From Antonio’s comment here ( http://www.itthinx.com/plugins/groups/#comment-17494 ) I get the impression that I’ll need to whip up something custom with the API. If anyone has any pointers to speed up that task, I’d greatly appreciate it, and I wouldn’t be surprised if others here might also find it valuable.
Thanks much!
SteveHi Steve,
I’ve created a small example plugin for you which assigns the user to the Foobar group when the user is added to the Premium group. It’s here https://github.com/itthinx/groups-premium-add-to-foobar
That would take care of automatically adding them to a specific group and can be extended with adding them to more groups, or you could even schedule having them added at a later point using wp_schedule_single_event, useful if you want them to join a group at a later point.
I hope that helps getting started towards your solution, feel free to ask if you have questions 🙂
Cheers
Hi,
I’ve checked the thread but I didn’t find the answer for my question. I can restrict access to my pages (or content on pages) via Groups plugin. But I would like to allow registration just to people with special code. I have a list of codes (around 1000 codes) and would like to automate the registration process. Every code is unique and can be used just once. If the code is correct, you can register. If the code is wrong (or have been used), you can’t register. Do you have a solution?
Thanks!
Hi there,
I’m not sure how the codes that allow to register would be related to Groups … but I remember having seen a plugin for that … this one: http://wordpress.org/plugins/register-plus-redux/
Cheers
Sorry if this question was already answered before, I had hard time to read the entire thread. I have a DOWNLOADS page in my website that I would like to allow only logged users to read. If user is not logged, when he/she clicks the page, he/she is automatically directed to the login page. Is it possible to do? If so, how?
thanks a lot,
AlexHello,
I added two groups (Male, Female) in my website .. can you help me on how can I put these groups in the registration form so that the new user has to choose one of them ?
Thank you,Hi,
you could use this function as reference. Check the custom field, and assign to the appropriate group.
cheersHi antonio,
Thank you for your kind reply,
I added the below function to function.php , but nothing changed !
Please advice ,
Thanksadd_action(‘user_register’, ‘uag_user_register’ );
function uag_user_register ( $user_id ) {
if ($user_id != null) {
if ( $group = Groups_Group::read_by_name( ‘Male’,’Female’ ) ) {
$result = Groups_User_Group::create( array( “user_id”=>$user_id, “group_id”=>$group->group_id ) );
}
}
}
My question is… is it possible with this plug in for a user to request to join a group from within their profile? I am doing free membership. So the way to join the group is not by purchasing a membership… but rather by requesting to join. With role scoper, they can request to join in their profile page… and all I have to do is look in my admin panel and approve it. Then, it is done. But role scoper is no longer being supported, so I am open to try something else. (I am only just now setting up my site… it’s under construction.)
I don’t yet see how to functionally through the use of some plug-in allow users to self-manage themselves and simply opt into a group by me creating that permission. (I only want a user to have permission to “promote himself or herself”…)
Even though the membership is free, I restrict access based on membership levels.
It’s a learning curve trying to figure out how to do this. But, the main issue in my learning curve of what I know right now, is that at minimum, I need the user to have ability within their profile to at least request joining a group – because my site membership is free. I want as much of the site to be automatic as possible not requiring me to do any administrative permissions really.
If it was possible for permission to join a group to be automatic upon a person requesting to join the group… that would be ideal for most group levels for me.
Thank you.
Hi Laura, there’s a shortcode for that 🙂
[groups_join group="…"]
Have a look at the documentation http://www.itthinx.com/documentation/groups/shortcodes/ and give it a try. If you want them to be able to join without having to intervene, it would be suitable.
Leave a Reply