Membership with groups

Use case: The client wants a site that is mostly paid for only content. We want excerpts to show for the public and search engines, but only paid members can login and read the full articles. Setting up Subscription levels for single users is easy with Restrict Content Pro, especially now that they have added (along with Stripe and PayPal) as a gateway. But in this case, his bigger source of income was selling team and corporate memberships; one payment, one expiration date – many users. The Groups add-on for RCP comes to the rescue.

Items needed: Restrict Content Pro professional license. This includes the Group add-on and several others. You’ll also need a site with an SSL certificate enabled and a an account with a payment processor – like Stripe, PayPal,, etc. – that you can use with Restrict Content Pro, if you’re wanting paid subscriptions.

Setting up a group account is all about establishing the Group owner. Only the Group owner will get the renewal emails etc. When their subscription expires, every one in their group will be affected. Once their account is set-up and paid for, then they have the ability to add their own members through a front end form or with a CSV upload. Owners can set additional members as Admins to manage the group membership list. Members can also be added via the Dashboard, but this front end option takes a lot of work off the plate of the site owner!

Install Restrict and the Group add-on.

Restrict>Subscription levels

Set up the membership levels you want, add pricing, term limits etc. Set up the real ones you want and then it’s a good idea to add a test single subscription and test group subscription for a $1, so you can test things first. When setting up levels, you can make it a Group account by checking the Allow Group Account box at the bottom, this will then allow you to set how many seats will be allowed for this subscription.

RCP- Subscription level with Group

Set up the registration forms on a page. There is a basic shortcode ([register_form]) that will show all of the levels that you have created, but you can also set up an individual page for each subscription type based on the ID ([register_form id=”1″]). In this use case that was necessary. The client had one ‘unlimited’ option, that he wanted to negotiate pricing on a case by case basis. Payment for this one does not go through the site and I didn’t want a form for that! When a new unlimited group is sold, the membership is setup manually.

If someone purchases a group membership via the site, they become the group owner by default and only their login will allow adding and changing their membership, unless they setup additional admins. Any members that they add show up under Restrict>Groups>Specific Group>Members and also show up in the Users table as free.

RCP Groups screenshot

RCP Members
dashboard view

Adding subscribers manually:

For my client’s custom groups, or if you’re importing members from another site, adding them manually is needed, but it’s important to do things in the right order!

Single subscriber:

  1. Create the User first.
  2. Once saved, in the list view of Users, there’s a link to Add Subscription.RCP- add a user subscription
  3. At the Edit Member screen, change their status to Active, pick the right Subscription Level and add an expiration date if needed. Don’t forget to Update!

Group subscriber:

  1. Follow the first 3 steps above. This User will be the Group owner. When choosing their subscription, be sure it’s a level that allows groups.
  2. Restrict>Groups, Create a Group, make this user the owner.
  3. Now you can add members manually or via CSV upload in the dashboard, or the Group owner can do it themselves on the site. (I created a page called Group Management with 2 shortcodes: ([login_form] [rcp_group_dashboard]). They need to login to gain access to the group management. All members in a group can have the same password if wanted.

RCP group management

RCP Group management 2
Site view for Group manager

Caveats when adding manually:

By default, adding new members creates the standard WordPress user notification and admin notification emails. In this case I was adding close to 900 people and didn’t want or need them to get these notifications. If you want to turn this off, you will need to write a small plugin to disable that function. ( and no, this won’t work in your functions file, has to be in a plugin. In addition to the system emails, RCP also has a way to Invite members to your group, which generates more emails. In this use case, I didn’t want that either, so in Restrict>Settings>Emails, I have the Group Invite email disabled.

It’s a fair amount of work to get all this working and tested, but now my client can now pass off a lot of the work he used to do to maintain his list to the group owners and the group owners have full control of their membership. A win-win!


Further Reference: Read this if you’re using!

Oh, and many thanks to John Parris, the support lead for RCP, his help is invaluable.