Want to create a membership site on WordPress? In this real-life use case we will build one with three plugins: WooCommerce takes the payments, WooCommerce Subscriptions turns products into membership levels, and Restrict for WordPress controls who sees what. A fair warning before we start: Restrict is a content restriction plugin, not a full membership platform. It does not bill customers or manage plans. It locks content and decides who gets in. That division of work keeps the setup simple, and by the end of this walkthrough you will have a working membership site, from the subscription product to the locked member area.
How it works: Restrict.io is a WordPress content restriction plugin – it locks your content and decides who can see it. In this setup, WooCommerce takes the payments, WooCommerce Subscriptions turns products into membership levels, and Restrict gates the member content by role and purchase. Restrict does not include its own payment processor or membership-level manager, so it pairs with those plugins.
What is a membership site, and why WordPress
A membership site is a website where some content is available only to members. Those members usually pay a recurring fee, but they can also be free registered users, or customers who bought one specific product. The content itself can be anything: articles, courses, videos, downloads, community pages.
WordPress is the natural base for this because you assemble a membership site from plugins instead of building it from scratch. WooCommerce handles products, checkout and payments. WooCommerce Subscriptions adds recurring billing. Restrict adds the gates. You keep the theme you already have.
What you need
For this setup you need four things:
- A WordPress site, on any theme you like.
- WooCommerce. Free. Handles products, checkout and payments.
- WooCommerce Subscriptions. A paid add-on for WooCommerce that turns products into recurring subscriptions. Your membership levels will be subscription products.
- Restrict for WordPress. The plugin that restricts content to the people you choose. It has 86,197 downloads and counting. For this guide you need a premium license, because we will use Restrict’s shortcodes. Plans start at $39 per year for Restrict for WordPress, or $59 per year for the Bundle covering both plugins, with lifetime licenses available. Every purchase comes with a 7-day trial and a 7-day money-back guarantee.
Make sure all three plugins are installed and activated, and configure at least one payment gateway in WooCommerce so customers can actually pay.
Step 1: Install and activate Restrict
Restrict installs like any other WordPress plugin: upload it, activate it, enter your license key. Once active, you will find a Restrict area in your admin menu. That is where every restriction setting lives, and it is where most of this guide happens.
If you get stuck at any point, the installation and activation documentation walks you through it, and the full documentation covers every setting.
Step 2: Create your membership levels
A membership level, in this setup, is a subscription product. A $9-per-month level is one product, a $29-per-month level is another. Create as many as you need.
Set the subscriber roles
Before you create products, open WooCommerce Settings and go to the Subscriptions tab. Make sure Subscriber Default Role and Inactive Subscriber Role are set to different roles. For example, Subscriber for active members, Customer for inactive ones.
This matters because WooCommerce Subscriptions switches users between these two roles as their subscription becomes active or expires. Restrict will use the active role as one of the access conditions.
Create the subscription products
Create a simple subscription product, give it a name (e.g. Monthly Membership) and set the price and billing period. Repeat for every level you want to sell. If several levels share a price structure, a variable subscription product with variations keeps them on a single product page.

Step 3: Restrict content to members
Now the actual restricting. With Restrict you can gate content by user role, by purchase, or by a combination of both. For a membership site you will use both.
By user role
Open the page or post that holds your member content. In the dropdown labeled Content available to, select Users with specific role and pick the role that matches your subscriber default (Subscriber in our example). Only users currently holding that role can view the page.
By product purchase
Instead of a role, you can gate a page by purchase. Select WooCommerce Users, then Specific product, and choose the subscription product. Only customers who purchased that product get access.
Combine both for subscription access
Each criterion alone has a gap. The purchase check alone keeps access forever, even after a subscription expires, because the purchase itself never goes away. The role check alone lets in anyone holding the role, even if they bought a different product. Combine both and access requires the specific purchase and an active subscription. When the subscription lapses, WooCommerce Subscriptions moves the user to the inactive role, the role check fails, and access is revoked until the customer renews.
The full setup is explained step by step in our WooCommerce Subscriptions guide.

Step 4: Build a teaser paywall with a shortcode
Membership sites rarely lock everything. They show a teaser and gate the rest. Restrict does this with a shortcode:
- Head to Restrict, then Shortcodes, and scroll to the WooCommerce Users area.
- Select Specific product, pick your membership product, and click Copy.
- Paste the generated shortcode into your page and wrap the premium part of the content between [rsc_restrict_content] and [/rsc_restrict_content].
Everyone sees the teaser. Members see the full content. Non-members see the message you set in the WooCommerce area of Restrict, and you can include a link to the product so the next step is one click away. Shortcodes are a premium feature, which is why this guide uses the premium license. The shortcodes documentation explains them in general.

Step 5: Menus and widgets for members
A membership site should feel right to both audiences. Restrict can show or hide menu items and widgets with the same criteria you use for content.
- Show a Member Area menu item only to subscribers.
- Hide the Join Now button from members and show it to everyone else.
- Place a login form on the site, or use the login form shortcode, so members can sign in from anywhere and reach their content.
Each menu item and widget gets its own visibility criteria, so visitors and members see different navigation without a second theme. The guides for restricting menu items and restricting the visibility of widgets show the settings, and the login form documentation covers the form.
Conclusion
You now have a working membership site on WordPress: subscription products for your levels, recurring billing, content gated by role and purchase, a teaser paywall, and navigation that adapts to the visitor. The recipe scales. Add more levels, more products, different pages per tier, and it keeps working.
Restrict is not a membership platform, and it does not pretend to be one. It is the gatekeeper: 86,197 downloads, one job, works with the theme you already have. The same integration works with Easy Digital Downloads, and you can reserve content for Tickera and Venuera ticket holders. You can even personalize pages by URL parameter, referrer or cookie, so different visitors see different versions of the same page.
Restrict for WordPress starts at $39 per year, or $59 per year for the Bundle with both plugins. Lifetime licenses are available, and every purchase comes with a 7-day trial and a 7-day money-back guarantee. See the pricing page and pick the license that fits your site.