WooCommerce Memberships has been one of our flagship products at SkyVerge for a couple years, and today we’re very excited for the next evolution of the Memberships ecosystem.
When we originally built Memberships, our main goals were to provide a robust integration with Subscriptions for content protection, while also ensuring that sites could offer store perks to certain groups of customers (such as discounts or exclusive products). Over time, we’ve seen Memberships grow from a “customer perks and content” solution into a solution for: customer segmentation, wholesale customer management, group account management, and more. While the expansion of the way Memberships is used is exciting, it also makes it very difficult to determine what “core” functionality to build into the plugin (to meet the needs of most users), and what’s actually a candidate for a one-off customization.
We love to work with the developer community that’s formed around Memberships, and we’ve seen some really cool customizations come out of this community. However, we’ve also seen some of the same customizations done and re-done, so we want to give developers better tools as a starting point for these customizations. In addition, even if a feature request is only required by a minority of sites — and so probably not a “core” feature — given the size of the Memberships user base, this could still represent hundreds of sites who could benefit from this feature, and we’d like to find a way to help them.
To take a step towards meeting these minority needs, we’re introducing add-ons to the WooCommerce Memberships ecosystem. The intent of these add-ons is to add functionality that’s needed by many Memberships users, but doesn’t fit into the core Memberships plugin itself (functionality that wouldn’t be used by the majority of sites). Today we’re launching our first premium add-on, as well as a set of free add-ons. You can now view all Memberships add-ons here, so bookmark this page!
Before we get to details on each of the add-ons we’re launching today, there’s one common question we’ve gotten from beta testers: What does this mean for Memberships core development? The good news is, it means core development will become more robust and extensible. Building add-ons for our own plugin helps us make it easier for other developers to work with it. But we will not stop development of Memberships itself; in fact, version 1.10 will complete testing shortly, and will be launched soon to improve Memberships’s scalability. We’ll still be adding highly requested features into Memberships itself, such as the ability to limit free shipping to members, which is coming in version 1.10.
Add-on development is intended to provide an official solution to problems that we previously had to ignore since they didn’t fit into the core Membership product. These add-ons won’t take away from the Memberships plugin itself, or features it will offer; rather, they’ll let you do even more with Memberships if you have a niche set up that we may not have previously supported fully. 🙂
With that said, we’re excited to share 4 new add-ons for Memberships today! Let’s have a look:
- Teams for WooCommerce Memberships (premium)
- Membership Directory shortcode (free)
- Role Handler for WooCommerce Memberships (free)
- Sensei Members Area (free)
Teams for WooCommerce Memberships ($129, available at WooCommerce.com) is our first premium add-on for Memberships, and it already comes packed with a robust set of features. Teams brings group access to Memberships. With Memberships alone, you can sell memberships to individuals. With Teams, you can also sell memberships to a group, company, or family. Teams lets an owner for the group control who has access to membership perks while managing all billing and access for the group.
Selling a team
You can sell a team using one of two pricing schemes: per-member or per-team pricing. Per member pricing allows you to set a price for each “seat” that can be occupied by a member of the group, along with a minimum count required to purchase the team, and a maximum seat count for the team.
When a team with per-member pricing is purchased, the quantity of seats chosen will determine number of members that the team owner can add to his or her group.
Per team pricing lets you sell a team in terms of “blocks” of seats instead. You can set the number of seats in the block, and then the team is sold at a fixed price.
Variable products are supported with both pricing schemes as well! This makes it easier to set up a system by which the per-member price changes based on number of seats, or you can sell blocks with different seat quantities. Each variation has its own pricing, minimum seat count, and maximum seat count.
You can also opt to change the the membership plan the team will have access to for a variation, letting you change the access type (and potentially, price) based on what variation is purchased.
Team owner views
Purchasing a team looks similar to purchasing a “regular” product. For per-member pricing, customers will see “per member” appended to price to indicate this scheme. For per-team pricing, we recommend enabling “Sold individually” for the product, so quantity is hidden (since the purchase is for one “block”). Either pricing scheme will ask the owner to name the team while purchasing.
The owner can then use your store’s standard checkout process. The owner will be required to create an account (just as they would if purchasing an individual membership) so they can manage the team from their account.
Once the team is paid for, they can add members to occupy the team’s seats. Owners can add themselves to the team with one click, but they don’t have to occupy a seat if they won’t be using membership perks themselves. They can also send email invitations to members one-by-one, or share a “join” link with members to allow them to sign up for the team themselves.
Owners can then view all invitations for their team, view all members on their team, remove members (if you allow this in the plugin settings), and promote members to managers. Managers can add or remove others from the team, so they can assist the owner in team management, but cannot view billing information for the team.
Team member views
When a member is invited to a team, or clicks on a “join” link, they’re asked to create an account or log in.
Once this invitee has an account, or is logged in, they can join the team to gain access to the team’s membership plan.
Once the member has joined, they’ll now be able to get access to all member perks for that plan. However, this member cannot manage his or her own billing records; the only action members can take on a team-managed membership is to leave the team.
Finally, team members won’t get membership lifecycle emails directly; renewal reminders and expiration notices are sent to the team owner instead of the team members since only the owner can renew their access.
As a store administrator, you can manage teams as well! In fact, if you’ve already created groups or teams in your own way, you may want to manually create teams and move existing membership management to a team owner.
When viewing a team in your WordPress dashboard, you’ll see a list of all members on that team, and you can add or change members as a team owner can. You can also adjust the team seat count and quickly view billing details.
Of course, this plugin wouldn’t be complete without a detailed WooCommerce Subscriptions integration! Just as Memberships integrates tightly with Subscriptions, so does Teams.
Team access can be tied to simple and variable subscription products, letting you bill teams per-member or per-team on a recurring schedule.
When a team is tied to a subscription, all membership records on the team will “listen” to the owners billing, just like they would if they had been purchased individually. If the owner’s billing pauses or lapses, all memberships on the team will pause or expire.
Ready to give it a whirl?
Our first free add-on is Directory Shortcode for Memberships, which gives you the ability to print a simple directory of members on your site using the
By default, all members are included, but you can add arguments to the shortcode to determine what plans you want to show members for, along with what user data is shown.
The directory data this add-on can output is limited to core WordPress user fields. However, developers can adjust the template in the plugin to add more details for members, including custom fields or other member data, as needed. Feel free to fork this add-on and use it as a starting point for your projects!
Our free Role Handler add-on for Memberships makes it possible to adjust user roles for active members. While many plugins have integrations for Memberships already, other plugins may work exclusively with roles. This add-on lets you assign a role for active members, and one for inactive members, so that you can leverage other plugins that work with roles.
This works great with the free User Role Editor to create custom roles on your site as well.
Role Handler works similar to the active and inactive roles in WooCommerce Subscriptions, so if you use Subscriptions alongside Memberships, we recommend using those built-in roles instead. We have a more detailed guide to using this add-on coming later this week!
Finally, we’ll wrap up our free add-on set for this week with Sensei Member Area. This add-on helps Sensei users call more attention to restricted courses and lessons.
The “member area” settings for a plan can now enable a “Courses & Lessons” section. If this is enabled, all Sensei content will be moved out of “My Content” and into “My Courses & Lessons” instead so that it’s shown separately from posts, pages, and other site content.
Whew, a 4-add-on release! We’re very excited to start down the path of expanding support for all sorts of membership sites, and we’ve got even more coming.
- We have a add-on awaiting review on WooCommerce.com that lets you keep member lists in sync with a MailChimp mailing list.
- As noted above, we’re soon wrapping up development on Memberships v1.10, stay tuned, 🙂
- We’ll also soon require PHP 5.3 for Memberships (in the next minor release after v1.10) — if you’ve built customizations that rely on class names, please reach out to us, as we’d be curious to hear about what you’re doing, and advise you on future-proofing your customizations.
Finally, a special thanks to our beta testers and early adopters for Teams! We’re very excited to have a well-tested v1 available to all merchants today.