In this screencast we start talking about how we are going to build the membership area of CSS-Tricks. Part of the Kickstarter that made this whole thing possible was the promise that Kickstarter backers would get access to a private members-only area where they would watch videos like the one on this very page.

It's kind of a funny moment really, because you're watching a video in the private access area that, in the video, has barely been conceived yet.

We're using WordPress, and WordPress has a lot of the functionality that need already: user authentication, user access levels, conditional logic for displaying content based on access levels, CMS-ness, etc. So obviously, let's build this private access area as part of WordPress.

What WordPress doesn't have is a way to accept payments and manage a set of arbitrary access levels. For this site we'll need at least two since I promised two different levels of access. WordPress has stuff like "subscriber" and "editor" and whatnot - but that has too much meaning in WordPress core. I just want to define access levels arbitrarily.

Fortunately we don't have to write all this code ourselves. WordPress is a huge community and an extensible code base. So there are loads of plugins to provide this functionality. But which one is best? That takes some research. I did this research through creating a spreadsheet to compare all the features (file downloadable below). In this screencast we look through that spreadsheet. We even talk about intangible things like features that we wish they had and the people behind the plugins.

In the end, we decide on Restrict Content Pro.

Comments

  1. Kmullins131
    Permalink to comment#

    Chris,

    I am going to use this plug in for a site I am doing. The only problem I am having is how do you handle if someone wants to upgrade there subscription. I can’t find a way on CSS-Tricks so do you just not have one? Thanks!

    • Chris Coyier
      Permalink to comment#

      I’m using PayPal as the payment processor with RCP. PayPal doesn’t have any way to adjust subscriptions, so the only way to upgrade is to cancel and re-start a new subscription. I think Stripe can handle plan upgrades, and RCP has a Stripe module, but I’m unsure if RCP supports it on the plugin side.

  2. Sascha Moeser
    Permalink to comment#

    Hey Chris,
    I know you did a lot of research on all those different Membership plugins. Is there any (free) plugin you would suggest which has obviously less features than the payed ones but is still doing the work good enough for smaller projects?

  3. Jasmine Wilkinson

    FYI link to Restrict Content Pro above no longer works – I found it here instead http://pippinsplugins.com/restrict-content-pro-premium-content-plugin/

Leave a Comment

Posting Code

We highly encourage you to post problematic HTML/CSS/JavaScript over on CodePen and include the link in your post. It's much easier to see, understand, and help with when you do that.

Markdown is supported, so you can write inline code like `<div>this</div>` or multiline blocks of code in triple backtick fences like this:

```
<script>
  function example() {
    element.innerHTML = "<div>code</div>";
  }
</script>
```

We have a pretty good* newsletter.