Groups WooCommerce

Groups WooCommerce is a WordPress plugin that allows to sell memberships with Groups and WooCommerce.

Selling Memberships with Groups and WooCommerce

Groups WooCommerce grants memberships based on products. It automatically assigns a customer to one or more groups based on the products ordered. Memberships can be sold through normal products where membership is granted for an unlimited time through one-time payments, or through subscriptions where the memberships lasts as long as the subscription is active, based on recurring payments and an optional setup fee. If you want to charge a monthly subscription fee, the WooCommerce Subscriptions plugin is required, which adds a new subscription product type. Groups WooCommerce controls the memberships for the duration of the subscriptions.

WordPress and Plugin Requirements

To sell memberships with Groups and WooCommerce you need at least WordPress 4.6 and these plugins:

Groups (free) – provides the membership and access control capabilities
WooCommerce (free) – provides the e-commerce system
Groups WooCommerce – allows to sell group memberships through WooCommerce

Optionally, if you want to sell subscriptions with recurring payments, WooCommerce Subscriptions – adds subscription products and recurring payments to WooCommerce.

662 Responses to Groups WooCommerce

  1. Thalita September 19, 2014 at 6:15 am #

    Hi there,
    I can’t get the plugin to assign the right group/capabilities after someone purchase a product. The product is set to “add to group A” but after someone buys the product, he’s only assigned to the “registered/default” group. I have tried all settings and I can’t get this working.

    I have only the five required plugins active and they are all up-to-date (WC 2.2.4, Groups 1.4.12, WC Groups 1.6.0, WC subscription 1.5.11, WC Stripe 2.2.0) and the latest WP4.0.

    I would really appreciate any help to solve this problem. I’m wondering if this is a bug with the WC Groups and the latest Woocommerce update.

    Thank you.

    • kento September 19, 2014 at 7:18 am #

      Hi Thalita,

      You must update the Groups WooCommerce plugin to the latest version 1.7.0, the version 1.6.0 you are using is not compatible with WooCommerce 2.2.4


      • Eric September 20, 2014 at 7:51 pm #

        I’m running into quite a few errors with Groups WooCommerce and WC 2.2.4… I see you mention version 1.7.0 of Groups WooCommerce above, but only version 1.6.0 is available for download where I purchased from WooThemes. Where do we get it?

        • kento September 22, 2014 at 8:51 am #

          Hi Eric,

          You should see the updated version available now on WooThemes.


  2. Greg September 16, 2014 at 4:15 pm #

    I currently have a WooCommerce store on which I sell digital products. These products have different prices for different sized congregations, for which I use product variations. Currently, once a customer completes an order, they are given a link via email and through their login account to download a very large zip file containing 20-30 PDF files. These ZIP files are stored on Amazon S3. What I want is to have customers pay to join a group per product using Groups WooCommerce, Groups, and Groups File Access. But, I need to know, does this work with product variations? Each variation would get access to the same group, just for a different price.

    • kento September 16, 2014 at 6:27 pm #

      Hi Greg, yes that works with variations, too. In fact, if it’s just the same group, you don’t need to indicate the group explicitly on every variation, just on the variable product.

      • Scott January 17, 2020 at 6:17 pm #

        This doesn’t seem to work with Variable products. I set the overall variable product (not each variation) to be in a group upon purchase, but the customer did not get assigned to the group. Perhaps I’m doing something wrong?

        • Kento January 19, 2020 at 6:05 pm #

          Hi Scott,

          We’re not aware of any particular issues with variations. If you haven’t already, please submit a ticket via Open a support request and our team will help you further.


  3. Paul September 12, 2014 at 2:08 am #

    What are the advantages of using two plugins (Groups and Groups WooCommerce) instead of one dedicated plugin like this one for example?

    • antonio September 12, 2014 at 8:19 am #

      I have not tested the plugin you mention, but one of the main advantages of Groups is its versatility and possibilities (you can see a lot of plugin around Groups and its API).

  4. Doug September 11, 2014 at 7:49 pm #

    It looks like my last comment got deleted for some reason (curious).

    I have groups for woocommerce configured. Now worries there.

    1) I now have to pull my customers from another plugin into Groups. I can export the list from the other plugin, but I don’t see a way to import them into Groups. Is there a mechanism for that?

    2) If not – and I am going to have to enter them into Groups manually – I need a way to alter the end-date of each subscriptions. You see people have signed up for access to my courses over time, so I’ll need to set the end date (or subscribe date) manually. How do I do that? If there is no method through the UI, what fields (in what tables) do I need to update in the DB?

    • kento September 12, 2014 at 1:46 pm #

      Hi Doug, it was queued, see above please 🙂

  5. Doug September 9, 2014 at 4:52 pm #

    I have a running site that offers virtual products with a 12-month subscription. That running site uses a backend that I am moving away from in favor of woocommerce with groups.

    I have installed and set up woocommerce and groups on my development server no worries there. Now have to transfer user memberships from my old system (imember360) to my new setup.

    1) I see no way to import users in-mass.

    2) I see no way to adjust the end-date of a subscription. I have two use-cases for this.

    a) If I add members manually, each of their memberships is due to expire at a different date. I need to modify those dates so I don’t give them access beyond their original 12 month access window.

    b) I have certain customers that are friends and family, so I’d like to extend their membership for free.

    How do I modify the membership end dates?

    • kento September 12, 2014 at 1:16 pm #

      Hi Doug,

      What you would need is a feature that is scheduled to be added, i.e. the option to manually limit or modify time-limited memberships. Although there would be ways to limit them by modifying entries in the database, I would prefer to provide this as a feature implemented on the back end rather than give indications on how to do it (there are several steps involved that require advanced knowledge that I wouldn’t expect anyone to have unless they do programming themselves).

      This is quite probably going to be added in the next release which is scheduled to come out within a few weeks, if it’s an option for you to maintain the memberships as unlimited meanwhile, then I’d wait for the upcoming release to modify them.

      • Doug September 12, 2014 at 8:01 pm #

        That is great news! Giving us the ability to modify dates allows us to provide better customer service, and – in my case – move over from another membership plugin that allows this type of flexibility.

        I look forward to seeing this in the new release. Thank you.

        • Doug October 2, 2014 at 4:21 pm #


          I have seen a few more requests for this feature (i.e. ability to manually edit the end-time for time-limited access to content, and I know it is important for me in order to get my site migrated to my new platform and to go live.

          Your comment above says the feature would be ready soon. Any update on when you will be publishing an update to the plugin with this feature?

          • kento October 6, 2014 at 8:54 am #

            Hi Doug, yes, the update with that feature is scheduled for release during this week, as soon as tests have concluded.

  6. Harry Lime August 30, 2014 at 8:16 pm #

    Hi Antonio,

    Thanks for the quick response! I have a few restricted pages that are assigned to another group, and then gave access to those groups to certain users.


    • kento September 1, 2014 at 4:17 pm #

      Perfect, thanks for following up!

  7. Harry Lime August 30, 2014 at 8:03 pm #

    Hello, does anyone know what code could be added to the functions.php file to redirect a user that isn’t logged in with access to a different URL (I’m using Groups plugin)? Similar to what the Groups 404 Redirect plugin is doing but I actually want to have have multiple redirects depending on access restriction group is assigned to a page/post. I’ve spent hours searching and testing different codes locally and I haven’t been able to find it. Any help on this would be great.


    • kento September 1, 2014 at 4:17 pm #


      I would start reviewing Groups_404_Redirect::wp() to see how it’s done and then derive your customized implementation from there.

  8. Rob August 27, 2014 at 3:41 am #

    I’m using Groups with Groups for Woocommerce as (sort of) membership site (with a dynamic pricing pluging to change price by group membership).

    I need to import some customers with their group membership from a csv file. I know there are several plugins to import wordpress users, and woocommerce extensions to import customers, but I haven’t seen confirmation that any of these plugins or extensions will also import the Group the user is a member of.

    How can I do this?


    • kento September 1, 2014 at 4:08 pm #

      Hi Rob,

      The users whom you’d like to import come from another site using Groups or from another system?

      • Rob September 1, 2014 at 7:52 pm #

        These users are just on a csv file, and they weren’t originally exported from Groups, WooCommerce or WordPress. It’s just a standard csv file.

        • kento September 12, 2014 at 1:02 pm #

          Hi Rob,

          Have a look at Groups Import Export please, that should be suitable.

          • Rob September 26, 2014 at 10:45 pm #

            Wow, I’m just seeing this reply now, but I just found this Import Export in a forum yesterday, and it looks like it’s just what I need. Does it import all customer fields on My Account page, including custom ones I add?

  9. TSO August 26, 2014 at 2:57 am #

    Thanks for responding back. I believe I’ve figured out what the issue was.

    I noticed that if the billing form on the checkout page gets auto-populated and the email address matches an existing account, then the user isn’t presented with the ability to create an account. I get that you can’t have multiple accounts using the same email, but I guess I wasn’t expecting it to be checking that information on page load.

    If you try to create an account and it matches an existing account, you receive an error messages telling you that. So, I assumed something was broken when it wasn’t presenting me with the ability to create an account at all. Not realizing that it was checking it against the billing info to determine if it should be presented or not.

    At any rate, I turned of auto-populate and I haven’t had that same issue since.

    • kento September 1, 2014 at 4:00 pm #

      That sounds correct, many thanks for following up! 🙂

  10. TSO August 23, 2014 at 3:23 am #

    I’ve got the WooCommerce, The Events Calendar, The Events Calendar: WooCommerce Tickets, Groups, and Groups WooCommerce plugins installed.

    I’m trying to sell tickets to events and provide restricted access to pages that contain event specific content. Everything seems to be working except for the checkout providing the ability for the customer to create an account so they can access the page.

    After testing the process, going through the documentation and starting fresh a couple times—everything seems to be setup correctly.

    • antonio August 25, 2014 at 10:28 am #

      do you have restricted the pages to ‘registered’ group or to another group? When an user is registered he is added to ‘Registered’ group automatically.

  11. Jason August 2, 2014 at 1:07 pm #


    I have a dating website with subscriptions. 1 month, 3 months, 6 months, 12 months all 4 of these are woocommerce products. My question(s) are will this work for me and does the plugin remind the admin or state in backend when the users membership has come to an end so i can manualy change their membership back to subscribed (default)

    Is there someone I can pay to install this for me its just a bit beyond what I can set up.

    thanks very much

    • kento August 5, 2014 at 10:13 am #

      Hi Jason,

      If you already have the WooCommerce Subscriptions extension installed and look for a way to have subscribers assigned to groups based on a product they are subscribed to, then this extension would be appropriate. At least to this extent, if you have additional requirements we would need to know what exactly you would expect the extension to provide to be able to answer your question more exhaustively.

      If you just want to set up Groups WooCommerce with Subscriptions, you wouldn’t need any particular skills beyond understanding what is documented here. Have a look, it’s pretty easy to set up 🙂

      Otherwise see the Affiliates Woo Workers or WordPress Jobs please where you should be able to find someone to provide installation services.

  12. Manny Campos July 31, 2014 at 5:49 pm #

    We have been using these plugins for a while with no problems till today. I have a product that assigns them to a group. we use woocommerce and a multi site worpress set-up. It works fine on the main sites but does not want to work on this sub site.

    Everything seems get assigned correctly – the user is assigned to the proper group and it matches the group on the course they have purchased, but they cannot see the course.

    Thanks for your help,


    • kento August 1, 2014 at 11:46 am #

      Hi Manny,

      The groups on sub sites are independent, if you have groups set up on two different sub-sites, they are not related. There have been ideas around sharing groups across sites in a multisite environment and it should actually be possible, but this hasn’t been implemented as an option yet.

      Can that be the cause?

  13. Lance Jones July 29, 2014 at 10:44 pm #

    Hi, Kento-

    I just heard back from WP Engine’s support team:

    “I do know that we have many bad link checker plugins on our disallowed plugins list because of the issues it causes with our server. We generally will process any set redirects on our end but the redirect you want to create with redirecting non-paying customers to the login page sounds like a feature that could be enabled with the subscriptions component of the theme.

    If possible, I would contact the developer again and verify the this 404 Redirect Plugin is the best way to redirect visitors who have not paid for premium content. I’m not seeing anything on our end that would block this feature, but we generally ban 404 redirect plugins because of our server setup. We will be happy to hear any suggestions they come back with and see if it is something we can assist with setting up.”

    I’m not sure how helpful this response is, but since it appears to affect all WP Engine customers, would you mind following up with them (as you mentioned above)?


    • kento August 1, 2014 at 10:31 am #

      Hi Lance,

      Many thanks for the update on that. Regarding their suggestions:

      “… sounds like a feature that could be enabled with the subscriptions component of the theme.”

      That is not the case as this is not related to a theme but to the access control based on the Groups plugin.

      Regarding this question:

      “… verify the this 404 Redirect Plugin is the best way to redirect visitors who have not paid for premium content.”

      Obviously yes, unless you’d be fine with Groups’ default behavior (which you’re not and thus the reason why you’re using Groups 404 Redirect 😉 ).

      The suggestion for this

      “We will be happy to hear any suggestions they come back with …”

      is to allow redirects that originate from the Groups 404 Redirect plugin. It’s working fine and is duely documented and its code is available in the public repository on so they can check that as well if desired.

      I can get in touch with the guys at WP Engine as well if you’d like me to, they are really helpful when it comes to stuff like that as I can say from previous contacts with their support team 🙂

      • Lance Jones August 1, 2014 at 4:14 pm #

        Kento, if you don’t mind asking WP Engine, I would really appreciate it… I haven’t been able to persuade them in the past very successfully (on other issues). 🙂

        • kento August 5, 2014 at 10:57 am #

          I’ve just submitted a ticket asking for guidance on this so that a 502 can be avoided.

          • Torre Kean August 5, 2014 at 4:04 pm #

            Just FYI I also have a ticket open with WPEngine requesting the same functionality. If it helps, it is Request #242483.


            • kento August 9, 2014 at 10:59 am #

              Thanks Torre, this issue is resolved, please update the plugin to the latest version.

        • kento August 8, 2014 at 11:05 am #

          Hi Lance,

          The cause of this is a bug in some versions of PHP. I’ve added a fix to the Groups 404 Redirect plugin and released version 1.2.3, please update to that version.

          Many thanks for your help in identifying this issue!


  14. Lance Jones July 25, 2014 at 3:14 pm #

    Hey guys, at Copy Hackers we love the premise behind Groups and the 404 Redirect. We just can’t get the 404 plug-in to work (we have the latest versions of WooCommerce, Groups, Groups for WooCommerce, and 404).

    We have another redirect plugin installed, but I’ve disabled it — and still no luck. We’re hosted on WP Engine.

    If I get you a login, would you mind taking a look? We have big plans for Groups, but we can’t make it happen without the 404 redirect.


    • kento July 29, 2014 at 11:00 am #

      Hi Lance,

      I’m getting

      502 Bad Gateway

      WP Engine/6.0.5

      when I try to access this page which is protected by Groups with Groups 404 Redirect trying to redirect to the WordPress login and using status code 301. Can you please check if the same thing happens on your site? If so, please contact WP Engine support to see if they can shed any light on why this results in a 502 and what needs to be done in order to make it work. Please let me know what you find out, I’ll wait to hear from you before getting in touch with them as well.

      • Lance Jones July 29, 2014 at 4:25 pm #

        Thanks Kento! I’m glad you were able to reproduce the 502, and I’ve opened a ticket with WP Engine. Stay tuned.

  15. Ari-Pekka Koponen July 17, 2014 at 1:18 pm #


    I bought the add-on, really nice!

    I’m wondering if it would be possible to have support for time-based product variations in the future? Meaning that the user could select how long the membership would last and the price would change accordingly.

    The scenario where this is needed: We’re building membership sites based on WooCommerce + Groups + Groups Woocommerce. On restricted pages the user is told what product they should buy in order to gain access. Now I have to link all different products (let’s say 1 week, 1 month, 1 year) instead of linking just one, where the user could choose their membership length.

    • kento July 17, 2014 at 9:14 pm #


      Yes the approach you have taken is correct for the current implementation. I’ve already thought about enhancing the plugin so that you can define different durations for each variation instead of having to use the same for all, but this hasn’t been implemented yet although I think it’s a worthy improvement. The implementation requires considerable changes though, so I can’t promise on a release date for this feature yet as we really have to test that thoroughly.


  16. Laurence May 28, 2014 at 2:36 pm #

    Hi – I have WooCommerce Groups / Subscriptions setup. Currently when someone signs up and purchases a subscription, they are automatically added to a group after payment is received (the order moves to processing).

    Our requirement however is for this only to happen once we have put the order into a “completed” status, as we have to verify some aspects of the order manually. I know this is possible when it’s not a subscription – is it possible to do with a subscription also?

    • antonio May 29, 2014 at 10:32 am #

      yes, should work well with subscriptions.

  17. Arturo May 27, 2014 at 7:11 pm #

    Have not tried yet 😉

  18. rutger100 May 27, 2014 at 3:45 pm #


    I have a problem with the automatic assignment of customers to groups.

    When a customer’ order is being processed, they should be added to a group.
    I checked this option > Add users to or remove from groups as early as the order is being processed.

    But…nothing is happening!

    1. The user should be created automatically right?
    2. Is the user also getting login info automatically??

    • antonio May 28, 2014 at 2:51 pm #

      Have you set “Pending” as “Add users to or remove from groups as early as the order is …” in Woocommerce->Groups?

  19. Arturo May 24, 2014 at 8:08 am #

    Is this compatible with BuddyPress?

    • kento May 27, 2014 at 6:59 pm #

      There are some known conflicts but depending on what parts you are interested in it can work. Have you tried Groups alone on your setup already?

  20. Eddie May 8, 2014 at 10:11 am #

    Hi Kento,

    I’ve been trying shortcodes in various places but not having any joy. I’m using Groups in conjuction with another plugin to do the calendar so targeting the exact area with shortcode isn’t that straightforward. The area that’s being hidden by Groups is actually the link, it’s parent h3 tag and it’s parent div tag.

    I’ve put the shortcode around the href, the a tag, the h3 and the div, but it doesn’t make a difference, the pages access restriction overrides it every time.

    Essentially, on the calendar page I don’t want to apply any Group access restrictions at all if possible. The events themselves however, do need group access restrictions.

    • antonio May 12, 2014 at 6:52 am #

      Please give us the code you are using (please use

      • Eddie May 12, 2014 at 8:01 am #

        That’s the code from the particular file in the plugin that contains the link. I guess I just need to know where to put the shortcode.

        • kento May 16, 2014 at 10:01 am #

          Thanks Eddie, I don’t understand why you want to use a shortcode on that though. Why don’t you simply render this conditionally based on group membership or capability? You can use the API for that instead of having to depend on the shortcodes, it seems more straight-forward to me for this case …

  21. Eddie May 1, 2014 at 10:23 am #

    Hi Kento,

    I’ve got an event calendar containing links to events (custom post type) with various group access levels. I want to show the event links in the calendar to all users but on clicking the link I want users who don’t have the required level of access to be redirected to a page instructing them to register for access (if that makes sense).

    Long story short, I want to show the links and hide/redirect the content.


    • antonio May 2, 2014 at 8:42 am #

      Hi Eddie,
      What is the problem?
      – You can not see the links
      – You can not redirect to the registration page

      • Eddie May 2, 2014 at 11:15 am #

        Hi Antonio,

        Sorry if I was unclear.

        I can’t see the links.

        I want to be able to display all the links and if the user isn’t part of the required group, redirect to the registration page.

        • kento May 6, 2014 at 5:26 pm #

          Hi Eddie,

          Thanks for clarifying that.

          Couldn’t you wrap the links within the conditional shortcode like this: [groups_member group="xyz"]… links …[/groups_member] ?

          And then use [groups_non_member group="xyz"]… Please login here …[/groups_non_member]


  22. Benjamin Lee April 18, 2014 at 1:40 pm #


    I have purchased Groups and Groups for WooCommerce. I am trying to figure out how I can give my customers unlimited access to a product which I have placed on a simple subscription. The reason why I have set it up this way is to provide my customers the flexibility of a payment plan. For example, I have a product that costs $147 and I have created the same product with a payment plan of 3 payments of $57. How can I continue to provide access to the product after the payments have stopped? Thanks!

    • kento April 18, 2014 at 10:29 pm #

      Hi Benjamin,

      With subscriptions, the group membership would last as long as the subscription period and then they would be removed from the group. A solution would be to grant access to protected content that lets users join the group that actually opens up access. So for example, the subscription would add the customer to “Group A” and then the [groups_join group="Group B"] shortcode could be used to let the user have access to the actual protected content. Once the subscription ends, the user would be removed from “Group A” but would still be a member of “Group B”. The problem with this is that if the customer decides to only pay the first installment, the customer could access anything protected without having to pay the second and third installments.

  23. Harry Lime April 17, 2014 at 12:25 pm #


    Is there a way to assign a group to a specific product variation? For example, one product has three options: 1 day, 1 week, and 1 month and depending on the option chosen the customer is added to the group associated. Trying to have time durations instead of creating three different products for the length of time.


    • kento April 18, 2014 at 9:42 am #

      Hi Harry,

      If you use variations, they would still use a common group assignment so that isn’t possible. In this case, you would have to define three different products.


  24. tomas April 16, 2014 at 3:32 pm #

    I would like to create the following (see below) but I am little bit confused and none of my attemps was working.

    I would like to restrict acces to content on webpage via shortcodes. Parts of the page will be visible to anyone, some parts to registered customers (all customers no matter what they bought) and other parts to customers who bought specific content. See below the setup:

    [anyone]This text should be visisble to anyone – these visitors should see only this sentence.[/anyone]
    [registered-customer]This and above text should be visible to registered customers no matter what they bought.[/registered-customer]
    [customer-bought-specific-content]This text & including first row should be visible to customers who bought specific content. The text for registered customers should be hidden for these customers.[/customer-bought-specific-content]

    I hope I’ve expleined this correctly.


  25. JessP April 6, 2014 at 10:03 am #


    I have woocommerce+ groups plugin that I purchased from Woo. Clients purchase an upcoming webinar from me and I want to give them access to the recording after the live event for 60 days. The best way to do this would be to have a date that they have access to (which I set at 60 days after the live event). Do you have this function available?


    • antonio April 6, 2014 at 10:34 am #

      you can do it with Woocommerce Subscriptions.

      • JessP April 13, 2014 at 11:30 pm #

        Hi Antonio,

        Ahhhhh… I just purchased Woo Subscriptions and I can’t find where you can select an end-date. It only works off days/weeks/months from the date of purchase – not from the date of the live event. Am I looking in the wrong spot??


        • antonio April 15, 2014 at 5:00 pm #

          you could use “expiry_date” custom field (in your product edit page). This field uses timestamp value (you can use to generate the value). A Screenshot.
          Maybe WooThemes support can help you better than me.

  26. Jonas April 1, 2014 at 9:58 am #

    Antonio, is it possible to enable WP’s search to show members only articles?

    At the moment only public articles show in search.

    • antonio April 4, 2014 at 3:26 pm #

      if you use shortcodes ([groups_member] and [groups_non_member]) to protect content, you can control the search result.

  27. joschi March 31, 2014 at 2:16 am #


    ive bought the groups for woocommerce plugin and everything is working fine so far. i have to do a little coding to check for an external app if a user is member of the group “premium”.
    so how do i do this? 🙂

    i know this question was aleready answered here, but unfortunatelly the code is removed from pastebin, so i have to ask again 🙂

    best regards

    • antonio March 31, 2014 at 5:46 am #

      you can use something like this:
      $user_id = get_current_user_id();
      if ( $group = Groups_Group::read_by_name( 'Registered' ) ) { // if the Group exists
      if (Groups_User_Group::read( $user_id , $group->group_id )) { // if the user_id belongs to this group

      Also you have available the Groups API.

      • joschi April 4, 2014 at 9:40 pm #

        thanks, that worked fantastic!


  28. Christopher Pelham March 30, 2014 at 9:57 pm #

    Hi. WooCommerce has been great for us so far! We have created a subscription site using WooCommerce and Groups. We had some server issues which prevented subscribers from accessing the site for a couple days and so decided to offer to extend everyone’s subscription by a week. However, I can’t see where to edit a subscriber’s subscription expiration date. Is there a way to do this?

  29. rutger100 March 27, 2014 at 12:49 am #

    Thanks for your nice plugin!

    I am developing a site now with memberships for 1 and 2 years. But the language of the site is DUTCH.

    The duration in the product overview is English >
    For instance >”€20.00 for 12 months”

    How can I edit this text and translate it into English? In which php file?


    • antonio March 28, 2014 at 9:19 am #

      you have the language files in groups/language (the integration translation is based in groups language file).
      This post can help you.

      • rutger100 April 8, 2014 at 5:17 pm #

        I dont understand….

        How do I translate the plugin in DUTCH.

        Please help me with a more complete guide.


        • antonio April 9, 2014 at 12:45 pm #

          you can:
          1.- copy groups/language/ and groups/language/groups-es_ES.po and paste as and groups-de_DE.po
          2.- Open your groups/language/groups-de_DE.po with PoEDIT. Edit it and save.
          This should works fine.

          • rutger100 April 16, 2014 at 2:07 pm #

            Thanks i did this.

            But the language files you mentioned are from the GROUPS backend.

            I want the Woocommerce GROUPS frontend translated..

            Can you help me?

            • antonio April 18, 2014 at 9:09 am #

              Exactly what do you need to translate in the frontend?

          • rutger100 April 18, 2014 at 3:49 pm #

            I need the duration to be translated in the frontend >
            €90.00 for 12 months

            Check the link >

            • kento April 27, 2014 at 11:00 am #

              I’ve updated the plugin and included a translation template in the plugin’s languages folder, groups-woocommerce.pot. You will see version 1.5.4 available shortly where this has been added. You can then use the translation template to add your translations, let me know if you need help on how to do that.

          • rutger100 April 29, 2014 at 10:46 am #

            Thanks for the update.

            I used the translation files for the dutch language.

            But It looks like its only translating the backend.

            I need frontend translations, is this also possible with the translation files?

            Check here >

            • kento April 29, 2014 at 5:31 pm #

              It seems the script I used to produce the .pot file misses plural forms, can you please try adding the following to your .po and refresh the .mo :

              msgid "%s for 1 month"
              msgstr "…"

              msgid "%s for %d months"
              msgstr "…"

              (Of course the … replaced with your translation.)

          • rutger100 April 30, 2014 at 11:17 am #

            I dont understand exactly….

            In the frontend the word “for” needs to be translated and the duration (months, weeks, etc.)

            Can you explain me further?

            • antonio May 6, 2014 at 7:31 am #

              please send us your translation files to support at itthinx dot com (please indicate this topic in the email).

          • rutger100 May 2, 2014 at 2:23 pm #

            @kento: Sorry, i dont completely understand your comment

            In the frontend the word “for” needs to be translated to dutch and the duration (months, weeks, etc.). See

            Can you explain me further how to do this?

            • kento May 6, 2014 at 5:40 pm #

              I’ve fixed the translation template so that the plural forms also appear. I’ll issue the update so that you can simply include your translations there.

  30. Bob Dunn March 25, 2014 at 5:04 pm #

    I’m hoping you can help me soon. I am using Groups and Groups for Woocommerce and am having the craziest problem. For some reason some of my categories only show up in the navigation bar when logged in. While others still show up. I have talked to WOO and they suggested I ask you as I did some testing and found that it was the Groups plugin causing it. None of the posts in the categories that are not showing up when logged out have any restrictions to them. I have stared at my settings for a long time and cannot for the life me of figure this one out… any thoughts would be appreciated!

    • antonio March 26, 2014 at 7:38 am #

      please give us an url to have a look.

      • Bob Dunn March 26, 2014 at 2:05 pm #

        shoot that would help, if you go to and click on the menu BobWPTutorials, you will see the categories:
        Plugins and Widgets
        Genesis Plugins
        Coming Soon (this is a page)

        But when logged in it shows them all.
        WordPress Basics
        Plugins and Widgets
        Genesis and Child Themes
        Genesis Plugins
        Coming Soon (this is a page)

        • Bob Dunn March 28, 2014 at 2:23 pm #

          Any hope of figuring this out? I feel my site is only partially accessible yet it needs to be live 🙁

        • antonio March 31, 2014 at 6:18 am #

          sorry for the delay. It seems now it’s working fine. Please share your solution with the community.(shared)

      • Bob Dunn March 28, 2014 at 9:14 pm #

        Well, after trying to figure this out, I gave up.. and when I deleted those categories, created new ones and assigned the same posts to them, it worked. So never really knew what happened originally.

        • antonio March 31, 2014 at 6:19 am #

          perfect 😉

  31. Joel Kriteman March 21, 2014 at 12:03 pm #

    Hi Kento

    I am using Groups and Groups for WooCommerce.

    I wanted to know please if there is an export plugin you would recommend so that I can export a list of WordPress users that would include which groups they are in as one of the fields.

    To be able to export just a particular group would be best but failing that to export all users but one of teh columns to show groups.



    • antonio March 26, 2014 at 7:24 am #

      you could use this plugin to create your own solution (you could use the shortcode for each group id).

  32. Aki March 18, 2014 at 11:55 am #

    Hi, is it possible to add more membership time to a user? We have some members who we’d like to thank for being active in forums etc. by giving their memberships more duration, but is it possible to edit the durations or should we just give them -100% coupons to buy more time via shop?

    • antonio March 18, 2014 at 4:14 pm #

      maybe this post can help you.

  33. Moonworks February 26, 2014 at 1:52 pm #

    I’m looking for a way in which a user can be added to a group after making a purchase on WooCommerce. Is this possible with this plugin, or is there another way to do it?

    An example is that a user purchases an e-book on my site, and once they have done so they will be automatically added to the group for that e-book.

    • kento February 26, 2014 at 2:13 pm #

      Yes that would be the plugin to use for this.

  34. Bob Dunn February 18, 2014 at 12:17 am #

    I am using this with subscriptions and wonder if there is a workaround on something I didn’t realize till right before launch. I have all single posts protected for tutorial viewing, but I want those posts to be viewed publicly in the category archive so visitors can see the videos available. Is there a way to do this?

    • kento February 20, 2014 at 11:14 am #

      If you’d like to allow them to view excerpts shown in the categories, then that could be achieved by disabling Groups’ get_the_excerpt filter:

      remove_filter( "get_the_excerpt", array( "Groups_Post_Access", "get_the_excerpt" ) );

      It should work if you place that in your theme’s functions.php … another option is to create separate posts in a category that provide a preview.

      • Bob Dunn February 20, 2014 at 4:00 pm #

        Hey Kento, thanks, will put that in the files… I ended up doing the later as I needed to launch, but will look at the code change in my next update… cheers!

      • Bob Dunn March 1, 2014 at 3:26 pm #

        Hey Kento, did have some other issues and gave this a try as it seemed like a better solution, but no luck on it… might have something to do with the theme I am using as well…

        • kento March 7, 2014 at 11:02 pm #

          Hi Bob, actually there’s more to it, sorry I forgot about the other filters that are acting there as well. I’ve done some tests a couple of days ago and I think the category with the preview is a better option for now, so if it’s working for you, rather stick to that 😉

  35. scott bernadot January 28, 2014 at 3:53 am #


    Is there a function I can use in a template or in the functions.php file to hide the buying options (variations) and Add to Cart buttons if the user is a member of a designated group?

    Was hoping for something like would be available so I could use dynamic CSS to hide things as well: if is_member(‘premium’) {};

    Been searching for an hour and can’t find anything.
    Hope you can help 🙂

    Thank you! – Scott

    • antonio January 28, 2014 at 8:51 am #

      this code can help you (change “registered”).

      • scott bernadot January 28, 2014 at 11:14 am #

        Thank you so much, Antonio! You’re awesome. That appears to be spot on with what I need.

        • antonio January 29, 2014 at 8:57 am #

          perfect 😉

      • scott bernadot January 28, 2014 at 3:20 pm #

        Hi Antonio,

        Couple things, I copied / pasted code into my functions.php file and i get this error;

        Parse error: syntax error, unexpected ‘[‘ in line 2 of the code

        Also, I am unsure how to use this. I simply want to check if someone is a member of a group. Could you provide an example of the “if” statement using the code provided? That would help me out a lot.

        Thank you! – Scott

        • antonio January 29, 2014 at 9:01 am #

          it seems a problem with your php version, you can try changing:
          $productsID = ["18","19","21"];
          $productsID = array("18","19","21");

          To check if someone belongs to a group, you can use:

          $user_id = get_current_user_id();
          if ( $group = Groups_Group::read_by_name( 'Registered' ) ) { // if the Group exists
          if (Groups_User_Group::read( $user_id , $group->group_id )) { // if the user_id belongs to this group



          • scott bernadot January 29, 2014 at 4:03 pm #

            Thank you so much Antonio. I will give this a try. I appreciate your help! Have a great day. – Scott

          • scott bernadot January 29, 2014 at 4:33 pm #

            Worked perfectly, Antonio. Thanks a million!

            • antonio January 30, 2014 at 8:20 am #

              I’m glad 😉

              The comment system filtered your code if you want to share with the community, please use

  36. Mat Arnold January 24, 2014 at 12:17 pm #

    i’m using groups to show certain products to customers based upon their group.
    Is there any way that i could show the same products but have a different price based upon the users group.
    I see that in the comments above someone managed to alter the tax addition based upon group.
    Even if it were just possible to have a percentage reduction, this would be great.

    • kento January 29, 2014 at 1:40 pm #

      Hi Mat,

      You could use the WooCommerce Group Coupons extension and define coupons based on group memberships that are auto-applied.


      • Mat Arnold January 30, 2014 at 3:23 pm #

        Great thanks, cant believe i couldnt find this before 🙂

  37. David December 12, 2013 at 3:01 pm #

    I am looking to allow someone access to restricted content with Groups, WooCommerce and WooCommerce Subscriptions.

    I need to be able to give them access to content based on the number of payments that have been made in WooCommerce. So, after the first payment, they will have access to the the Week 1 meal plan. After the second payment, they will be given additional access to the Week 2 meal plan. Is there any way to achieve this with this setup? If not, what would you suggest?

    Any ideas would be appreciated!

    • kento December 14, 2013 at 1:08 pm #

      Hi David,

      This would require a protection mechanism or group membership assignment based on the number of payments received, but as this is not something you can do OOTB, you’d need a developer to customize it.

      Another option would be to offer different products and assign different groups, e.g.:

      Week 1 / Group 1
      Week 2 / Group 2

      That could be achieved by using WooCommerce, Groups and Groups WooCommerce, you wouldn’t even need subscriptions for that.

  38. kaixer December 10, 2013 at 11:20 pm #


    I have pre-sales question, and I hope this plugin will work as I wish.

    I have a website,( and I would like to add membership plan for my customers.

    1. With one membership/subscription, can this plugin or Woo Sub make my customers have access to ALL my downloadable items? Because I want with one subscription they can have access to all my digital product.

    BUT from what I understand, this plugin and Woo Sub only offer subscription to one product only(by looking at screenshots and read half of docs). Am I right or wrong? Because I don’t want my customers subscribe one by one, it’s pointless, I’m not selling digital Magazine or one product that required update frequently.

    2. Can I sell single product and subscription at the same time? So buyers will choose whether they want to buy subscription plan or just buy the product without subscribe.

    Thank you in advance.

    • kento December 14, 2013 at 1:01 pm #


      If you just want to provide access to all products to any paid customer, you could set up a Premium group with Groups, then set up a WooCommerce product that grants membership to that group with Groups WooCommerce. With GW you can limit the duration of the membership or provide unlimited access. With WooCommerce Subscriptions, you can collect recurring payments from your customers to maintain their memberships. You can do this offering one or more products that grant access to the group.

      Assuming the above, you can use Groups File Access to restrict access to the related files to members of the Premium group.

      I hope that helps to clarify a possible approach, but please let me know if you need further help.


      • Jane Boursaw February 21, 2014 at 7:01 pm #

        Hi – I’m having a similar issue and feel like I’m *almost there, but am missing one key element to put all the moving parts together.

        I’ve created a product called “Premium: All Access Pass” that will give people who buy this product access to download anything in our shop (we sell movie reviews and other feature stories).

        Under the “Product Data,” I’ve checked the box for “Premium” so that anyone who buys this product will be added to that group.

        Under “Product Data,” I’ve also created a “variable subscription,” so that people have the option to buy a premium membership per month, per every 6 months, or per every year.

        In “Groups,” I’ve created a “Premium” group, but what capabilities do I give this group to allow them to download anything in the shop? Note that all the shop items must ALSO be available to download individually, for anyone who just wants to buy that ONE product and not a Premium Membership.

        Thanks for any help! I’m hoping to wrap up the set-up this weekend, so I can go back to adding reviews and other items, and marketing the shop.

        Jane Boursaw

        • kento February 23, 2014 at 11:07 am #

          Hi Jane,

          The following would be appropriate, let’s assume you have products A and B and Premium:

          Besides the Premium group, create a group A and another group B.
          For each product, under Groups, add to group A for product A, to group B for product B.
          For your “Premium: All Access Pass” product, grant access to groups Premium, A and B.

          If you want to restrict access to content based on those groups, create capabilities premium, a and b and assign them to their corresponding groups. Choose the appropriate capabilities in the Access Restrictions box for content that should be protected.

          Protecting specific files requires you to have either Groups File Access or to use temporary file URLs (for example Amazon S3), so that even if someone has the URL to a file, it’s only accessible when logged in with the right group membership or while the download links are valid.

          I hope that helps you to set things up, but please ask if you have doubts.

  39. Jon December 6, 2013 at 4:14 pm #

    Thanks for the reply. The temp expiry of the video can be done with Flowplayer I believe.

    Based on this I will try an example and see if it works well. I would need the ‘my account’ page to be returned to the customer after payment with the link to the restricted page to view the video.

  40. Jon December 4, 2013 at 10:10 pm #

    I am setting up to rent my movies (streaming video on a page) using woocommerce and groups. Currently they are for sale as downloads. Would this work:
    Say the movie is called movieAA and is attached to a page or post called movieAA. The movie is on Amazon s3 with temp url and restricted access (not public).
    I create a group called movieAA and assign them capability of movieAA (the page or post with the movie attached).
    I create the product – the movieAA (rental) and I assign the url of the restricted page or post – movieAA.
    The customer pays for the product, movieAA (rental) and receives the link to the restricted page or post where they can watch the movieAA.

    Is this how yiu could make renting a movie work? Like pay per view?

    Any ideas would be appreciated.

    • kento December 5, 2013 at 2:56 pm #

      Hi Jon,

      Yes that sounds ok except for “… I assign the url of the restricted page …” – where you rather would add the customer to the movieAA group when the product is purchased.

      Summarized for an example movie which is available on one page and where one product grants access to the page:

      • You have a page where the resource with temporary URL from Amazon S3 is embedded. The page has Access restriction movieaa.
      • A group MovieAA exists and the group has the capability movieaa assigned.
      • A product grants access to the group MovieAA.

      With that you can sell access to viewers. Note that it’s not pay per view but rather pay for being able to view (which can be unlimited or time-limited).

      I would assume you will have to fine-tune things with Amazon S3 to make the temporary URL to the resource, but it sounds like a good approach to me.

      This will probably come in handy for anyone looking to do something similar …

  41. Bas Kasteel October 12, 2013 at 9:15 pm #

    I am using groups to display certain products to certain users and not to others depending on which group they belong to. This uses the
    groups_read_post flagin the product edit page.
    I would like to display the product price with VAT or without VAT depending on which group the person is in. What is the PHP code for that please.

    • antonio October 14, 2013 at 8:15 am #

      you can use “woocommerce_product_tax_class” filter for this purpose, for example:

      add_filter( 'woocommerce_product_tax_class', 'my_woocommerce_product_tax_class' ), 1, 2 );
      function my_woocommerce_product_tax_class($tax_class, $product) {
      $group = Groups_Group::read_by_name( 'Premium' );
      if ( Groups_User_Group::read( get_current_user_id() , $group->group_id ) ) {
      $tax_class = 'Zero Rate';
      return $tax_class;

      This link and this conversation can help you to create your own filter.

  42. Loreen Liberty October 10, 2013 at 7:56 pm #

    I have watched your video and read your support page, along with the support pages on WooCommerce and WordPress but I’m still confused.

    I am using the Academy Themex Theme which came with WooCommerce included. I have added Groups, Groups WooCommerce, WooCommerce Subscriptions, and WooCommerce Product Retailers.

    What I am trying to accomplish:
    I have created 5 plans: Bronze, Silver, Gold, Platinum, and Student. I have a plan (subscription) and product for each.

    I have all of my content and menus separated by category. I would like each plan to have access to specific categories. I can create categories for each of the plans and add all content to these categories as if this need to be done.

    Each plan is set up as a subscription – 1 month.

    So if a user subscribes as bronze – they get access to the bronze group. If they subscribe to silver – the get access to bronze & silver. If a user subscribes as gold – they get access to the bronze, silver, and gold groups.

    What I am not understanding is how to tell each group what it has access to. How does the Bronze group know what it can and can’t see? I’m guessing this is in the capabilities – but I’m not understanding what I’m turning on or off when I look at Groups>Capabilites and WooCommerce>>Groups doesn’t seem to have anything to do with assigning content to groups.

    While on a page/post – I can see the Access Restrictions box – but I don’t know what I am supposed to put in the Enforce read access area…. the group name? If there is no group name – does everyone who visits the site have access?

    Any help would be greatly appreciated!!

    • antonio October 17, 2013 at 4:22 pm #

      You can create a capability for each group, and assign it.
      When you create a post you can restrict access to certain capabilities (right now you can’t do it in categories).

      To sell access, you can set the groups on the tab “Groups” on the product page.
      You have more information in Groups Woocommerce documentation page.

  43. A.B. Dada October 6, 2013 at 11:50 pm #

    I sell physical widgets on my website already (WooCommerce).

    I want to be able to upgrade customers to have access to premium blog content if they buy my physical widgets. I also want to allow customers to optionally buy premium blog content access separately.

    When they buy multiple widgets, they should get longer access.

    There is no auto-renewal.


    – customer buys 1 widget, gets 2 weeks access
    – customer guys 4 widgets, gets 8 weeks access
    – customer doesn’t buy any widgets, but buys 1 year access by itself

    Will this work for me? Again, no auto-renewals, just buying a widget and getting membership “free” times widgets bought, or buying membership directly.

    • kento October 7, 2013 at 11:27 am #

      It won’t work in the way that would be suitable for what you describe. The time-limited memberships will last the same amount of time whether you buy 1, 2 or more. It’s something worth to consider adding as an option though.

      • A.B. Dada October 7, 2013 at 11:50 am #

        Got it, thanks for the fast response.

        I’ll have to stay monitoring the changelog and hope it comes around in a future release.


  44. Kerryanne October 6, 2013 at 11:03 pm #

    I am setting up a magazine website that sells virtual and physical subscriptions.I am using Groups WooCommerce and the Groups plugin to provide member only content for the virtual purchases.

    I am looking for a way to hide/show content based on membership group. There are many plugins that do it based on User Role.

    The guys at woocommerce thought you may have some suggestions?

    • antonio October 7, 2013 at 5:45 am #

      you can use Groups for this purpose. You can restrict access by selecting the groups in post / page “Access restrictions” metaboxe.
      Or using [groups_member] shortcode.

      • Kerryanne October 7, 2013 at 10:10 pm #

        I needed it to hide menu options, widgets etc.

        I have since added do_shortcode in my template to solve the issue for the menu however its limiting for dynamically generated code.

        • antonio October 8, 2013 at 5:18 am #

          if you need hide widgets and use it dynamically, this conversation can help you.

  45. Anthony September 25, 2013 at 4:26 pm #

    Could you explain the what each of these two checkbox functions do:

    Under User profiles:

    1) Show membership info in user profiles – can I assume that this just means that when a user views his profile, he will just see which groups he belongs to, is that correct?

    2) Show membership info when editing user profiles – Still not fully sure what this means? If a userOr, does it means it allows a user to change his groups?



    • kento September 28, 2013 at 12:22 pm #

      Hi Tony,

      #1 is for a user viewing his own profile.
      #2 is for those who can edit user profiles, showing membership and subscription info to the user who is viewing the other user’s account.

      I’d recommend to make a test purchase on your development site to see what it looks like to the user viewing her own profile (#1) and see that for example for an admin viewing another user’s profile (#2).


  46. Viv September 25, 2013 at 1:36 am #

    Hi there,
    I have the woocommerce, woo groups and groups plugin all working fairly smoothly on a site that sells a variety of 1-3 month memberships. Once a user purchases a 1 month pass, they go in to the one month group. If they purchase a 3 month pass the following month, they are removed from the one month group and placed in to the three month group. The site is now being completely managed by the client, but she is reporting that occasionally users are being removed from the group they are in. As far as I understand, this should only happen if they purchase another product (and we have this set up explicitly on each product page). Is there anything else that could be causing this to happen? Obviously if a user doesn’t appear in the group they are missing out on content and it becomes a bit of admin work to find them and add them back in to the group. Any ideas would be much appreciated.

    • kento September 28, 2013 at 12:10 pm #

      Hi Viv,

      There was an issue with an earlier version of Groups WooCommerce where a user could have been removed from a group when an order was cancelled but another order would have granted access, but this was fixed. Assuming that you are using the latest release and that your setup is correct (it sounds correct), I can’t see a reason why users would be removed from a group other than that their membership has ended correctly.

      I would recommend to do tests checking expected memberships under a variety of order sequences. If there is any sequence that leads to an undesired outcome (i.e. user not belonging to a group although he should), then please let me know.

  47. One23 September 21, 2013 at 9:27 pm #

    Hey Guys,
    if a non-member tries to access a premium post he will be redirected to a 404 page, is it possible to show instead a message?

  48. One23 September 21, 2013 at 9:00 pm #

    how can I count “premium” posts.

    I want to display a message for non-members, like:
    “Members can read 20 Premium-Posts”


    • antonio September 24, 2013 at 8:32 am #

      in Groups Utilities you have groups-count-posts.php that creates a shortcode to count posts.
      Add this code to your function.php, and use the shortcode.

  49. One234 September 20, 2013 at 7:41 am #

    i am using woocommerce groups too and want to display a html code in the article loop if the current post has a access restriction = premium.

    How can i display that?


    • antonio September 21, 2013 at 6:28 am #

      this comment can help you. It isn’t the same case, but you can use it.
      In Groups API you have more information.

      • One23 September 21, 2013 at 9:33 am #

        thank you for your reply.

        I dont know how to modify the code for my puprposes.

        I need this


        if (access restriction=premium){
        echo “premium”;

        loop end

        I dont know what to fill in condition

        • One23 September 21, 2013 at 11:36 am #

          I inserted following code in the archive loop, but this code crashes the loop. Dont know why.


          <article id="post-” >

          • One23 September 21, 2013 at 11:37 am #


            • antonio September 22, 2013 at 5:57 pm #

              Sorry, I had misunderstood.
              If you have a capability “premium”, you can use:
              if (Groups_Post_Access::read(get_the_ID(), "premium")) {
              echo "PREMIUM !!!!!";

  50. Brian September 19, 2013 at 6:46 pm #

    We use using groups, along with woocommerce and groups for woocommerce and subscriptions for a website and I am having two issues I cannot figure out.

    First, the member and non member shortcodes seem to not be 100% working. When a user is not logged in the shortcodes work perfectly, but when a user is logged in for some reason when they are at their access level it will show both the member and non member text, other levels they are not at it works right and only shows the non member text.

    Secondly, the recurring billing doesn’t look to be working, it creates an invoice but doesnt process and we are using the right payment module and their merchant is setup to do this? Thoughts and ideas would be greatly appreciated. Thank you.

    • kento September 19, 2013 at 8:24 pm #

      Hi Brian,

      Regarding the shortcodes, please provide an example of how you are using them (pastebin) and access to the site to try it out would be good as well.

      Regarding recurring billing, what payment gateway are you using and what settings please? SSL certificate?

      • Brian September 20, 2013 at 4:54 pm #

        I am awaiting client approval to give you access and will have that over to you as soon as it is received. Is there somewhere private this can be sent?

        • kento September 24, 2013 at 10:42 am #

          As long as no confidential information is shown there’s no need to send it privately, in the case of showing shortcodes, it shouldn’t be necessary and it’s preferred to have it shown so it can serve as an example for others. But for access credentials please send that to support at itthinx dot com.

      • Brian September 21, 2013 at 12:38 am #

        here is the code in use in a post type, when not logged in viewing the page at it correctly shows the non member text only, when logged in at right level it shows both the non member and member text.

        PS – site and group access can be sent via a private connection, please advise.

        • kento September 24, 2013 at 10:43 am #

          Thanks Brian, the pastebin link says it has been removed. I’ll have a look at the page now.

        • kento September 28, 2013 at 1:54 pm #

          You should first update the plugins, Groups WooCommerce is now at 1.5.1 but you’re using 1.3.4 on the site. Also make sure to update Groups.

          As to shortcode usage, on the page you mentioned there are no shortcodes, it’s using a specific template. Make sure that the template uses WordPress’ queries correctly as these will respect access restrictions according to Groups.

          If you want to use the shortcodes, please review the Shortcodes section in the documentation.

Leave a Reply

We use cookies to optimize your experience on our site and assume you're OK with that if you stay.
OK, hide this message.

Affiliates · Contact · Jobs · Terms & Conditions · Privacy Policy · Documentation · Downloads · Useful Plugins · My Account