Skip to main content

to edit the capabilities associated with the role.If you’re looking to customize user roles on your WordPress site, it’s easy to do with the WordPress dashboard. By editing the capabilities.

Why Restrict Website Content?

One of the most common requests I receive as a WordPress developer is how to restrict website content to members, be it paying members or free registered members.

This tutorial explores one of the more straightforward methods for creating a membership driven website with WordPress and provides an easy guide to organizations with a limited technical resource.

There’s a variety of reasons a website owner may want to restrict content on a website, ranging from the desire to set up a private membership website or restricted area, to private articles for paying customers only.

If you’re looking to sell physical products or digital downloads from your website, you should read my post about selling online!

How to restrict website content on a WordPress website

WordPress restrict website content exampleThe first, and the most obvious way to restrict website content in WordPress is to use the Password protect option found within the Post Publish screen within WordPress, but this option is rarely suitable for restricting access as it requires to be set on a per post basis, and has limited practical application.

Instead, let’s look at a solution that’ll meet each of the following criteria:

  • membership based access to posts, or unique content;
  • restrict website content to specific areas;
  • allows posts to display excerpts, and prompts for login;
  • includes free, registered, or paid access restrictions for all posts;
  • recurring payments, or one-time payment access;

To accomplish these goals, I recommend using Pippin’s Easy Digital Downloads as the core of a membership driven website for a number of reasons, not the least of which is the expandability of the WordPress plugin, as well as a great community that has swelled up to offer ongoing support to the plugin itself.

How to restrict website content with Easy Digital Downloads

Power and Influence with restrict website contentEarlier in the year, I came across a post by Pippin Williamson on developing membership websites with EDD and while it was far from my first membership driven website, I was amazed by how easy his setup was.

The article outlined a few basic steps to creating a membership site, and after following them I had created the Power and Influence website with little effort.

Essentially, to restrict website content with Easy Digital Downloads, I followed these steps:

  1. Downloaded the free WordPress plugin Easy Digital Downloads;
  2. Added the premium add-ons Recurring Payments, and Content Restriction;
  3. Add the Stripe extension for a payment gateway;
  4. Configured the setup as per his instructions, and launched a membership website;

I found the process fairly easy but not without a couple of minor hiccups. For example, the plugin requires you to manually set each article as a restricted article. While this may not be a big deal for smaller sites, I could imagine it adding complexity for larger properties.

restrict website content with Easy Digital Downloads in WordPressTo restrict website content to a specific post, you simply open the post within the WordPress administrator and add Content Restriction to an individual post. The options box allows you to select which digital download to associate the article with, or to add multiple downloads as subscription indicators. For example, you can select that people have access to the article as soon as they’ve downloaded any digital download or a specific download.

In the case of the Power and Influence website, I wanted to restrict website content for all current content, as well as any new content created, so I created a simple plugin add-on for the website which marked all current, and future posts as requiring an active subscription to a specific product. This allowed me to save countless hours of manually restricting posts.

The second small alteration I made to the default functionality of Easy Digital Downloads was to add a redirect to restricted pages, bringing clients to a sales page with both free downloads and paid membership options. Again, it was a relatively small change to the default behavior of EDD but customized for the needs of a specific publication.

Subscription-based restricted website content

Stripe LogoWith the relatively simple Content Restriction plugin in place, the website now worked how I hoped except that I needed to bill subscribers for access to the premium content, and to do this I opted for the Stripe payment gateway which allowed for onsite seamless billing, and the Easy Digital Downloads Recurring Payments module to ensure member accounts would be billed automatically as long as they maintained their subscriptions.

It would have been just as effective to use PayPal as a payment processing gateway, but for the relatively small fee of integrating the Stripe payment gateway into the website, it improved the user experience tremendously by ensuring the website visitor didn’t leave the site during the entire experience.

There are a few minor things a website needs to run Stipe as a payment gateway:

  • an SSL certificate (allows secure communication between the website and client);
  • a website host that will support SSL certificates;

Media Temple LogoTo host the new website, I choose Media Temple’s managed WordPress services. Media Temple has an excellent reputation for hosting and recently introduced a powerful managed WordPress solution with great reviews. On top of being able to comfortably handle both the routine traffic and traffic spikes associated with an online publication, Media Template offers SSL certificates for websites without resorting to virtual servers.

Once I created an SSL through Media Temple and assigned it to my domain name, I created an account and activated the Stripe module on my website, tested the account and began selling subscriptions to restrict website content almost immediately.

The Cost to Restrict Website Content

While the cost of building a website to restrict website content with Pippin’s Easy Digital Downloads was relatively low, it did involve the purchasing of a few specific items.

Easy Digital Downloads Plugin Free
Content Restriction (EDD Extension) $29
Recurring Payments (EDD Extension) $83
Stripe Payment Gateway (EDD Extension) $49
Media Temple Hosting (per year) $348
SSL Certificate (per year) $75
Total $584

Setting up the Easy Digital Downloads membership site to restrict website content, and interact with Stripe took about a day with additional time set aside for site-specific customization. Of course, the time involved for each individual website would vary based on the unique needs of the website.

If you would like to receive a custom quote for a membership-based restricted website content solution, I would love to have the opportunity to provide an estimate.


While I had to do a couple of small custom upgrades to the Easy Digital Downloads plugin to get it to restrict website content the way I wanted, Pippin’s article on how to set up and run a WordPress membership website was exceptional and had been up and running in no time. In the end, I purchased the developer edition of the Core Extensions Bundle, and the Stripe extension so that I could build an unlimited number of membership websites in the future and I’d highly recommend his solution for anybody looking to develop a membership website.

If you’ve used EDD or another membership plugin to restrict websites content on a WordPress website I’d love to hear your suggestions or feedback in the comments below.