{"id":18646,"date":"2012-10-01T10:21:01","date_gmt":"2012-10-01T17:21:01","guid":{"rendered":"http:\/\/css-tricks.com\/?page_id=18646"},"modified":"2022-11-08T23:07:14","modified_gmt":"2022-11-09T07:07:14","slug":"120-choosing-a-membership-plugin-for-wordpress","status":"publish","type":"page","link":"https:\/\/css-tricks.com\/lodge\/v10\/120-choosing-a-membership-plugin-for-wordpress\/","title":{"rendered":"#120: Choosing a Membership Plugin for WordPress"},"content":{"rendered":"

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.<\/p>\n

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.<\/p>\n

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.<\/p>\n

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.<\/p>\n

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<\/a> 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.<\/p>\n

In the end, we decide on Restrict Content Pro<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"

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 […]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":18010,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"lodge-video.php","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"sig_custom_text":"","sig_image_type":"featured-image","sig_custom_image":0,"sig_is_disabled":false,"inline_featured_image":false,"c2c_always_allow_admin_comments":false,"footnotes":""},"tags":[],"acf":[],"jetpack-related-posts":[{"id":18712,"url":"https:\/\/css-tricks.com\/lodge\/v10\/141-restrict-content-pro-setup-and-settings\/","url_meta":{"origin":18646,"position":0},"title":"#141: Restrict Content Pro Setup and Settings","date":"October 2, 2012","format":false,"excerpt":"In this screencast we take a little break from battling Vanilla Forums styling to work on setting up Restrict Content Pro (RCP), our WordPress plugin for managing subscribers to The Lodge, the private access area (that you are literally inside of right now!). The first step is creating the membership\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":192724,"url":"https:\/\/css-tricks.com\/snippets\/sass\/simple-asset-helper-functions\/","url_meta":{"origin":18646,"position":1},"title":"Simple Asset Helper Functions","date":"January 9, 2015","format":false,"excerpt":"Dealing with paths is always a bit annoying, you will concede. Fortunately, it is extremely easy with Sass to have a beautiful API to manage assets and to keep the code simple to maintain. The only thing we need is to store the base asset path in a variable, and\u2026","rel":"","context":"With 3 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":18720,"url":"https:\/\/css-tricks.com\/lodge\/v10\/145-intro-to-the-lodge-private-access-area\/","url_meta":{"origin":18646,"position":2},"title":"#145: Intro to The Lodge (Private Access Area)","date":"October 2, 2012","format":false,"excerpt":"We've done a little prep for this new \"Private Access Area\" on CSS-Tricks. We've looked at WordPress plugins to help us, we've even decided on one and set it up. But now we need to get into actually building the front end. We're going to call it \"The Lodge\". Funnily\u2026","rel":"","context":"With 6 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":312118,"url":"https:\/\/css-tricks.com\/video-screencasts\/189-notion-for-personal-public-use\/","url_meta":{"origin":18646,"position":3},"title":"#189: Notion for Personal & Public Use","date":"June 5, 2020","format":false,"excerpt":"This is the last video in our little series on using Notion. We've covered how Notion is great for working on web development teams. But another thing that makes Notion great is that it's useful for yourself too. Sign Up for Notion Consolidate tools is usually a good thing. It\u2026","rel":"","context":"Similar post","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2020\/05\/notion-2-thumb.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":18015,"url":"https:\/\/css-tricks.com\/lodge\/v10\/002-establishing-redesign-goals\/","url_meta":{"origin":18646,"position":4},"title":"#002: Establishing Redesign Goals","date":"September 6, 2012","format":false,"excerpt":"This redesign isn't a redesign just for the sake of redesigning. I want to improve the site in every conceivable way you can improve a site. One of the big things is that the design should serve the different types of content in a way appropriate to that content. For\u2026","rel":"","context":"With 14 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":17382,"url":"https:\/\/css-tricks.com\/snippets\/php\/generate-expiring-amazon-s3-link\/","url_meta":{"origin":18646,"position":5},"title":"Generate Expiring Amazon S3 Link","date":"July 3, 2012","format":false,"excerpt":"You don't have to make files on Amazon S3 public (they aren't by default). But you can generate special keys to allow access to private files. These keys are passed through the URL and can be made to expire. Usage","rel":"","context":"With 15 comments","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/pages\/18646"}],"collection":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/comments?post=18646"}],"version-history":[{"count":4,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/pages\/18646\/revisions"}],"predecessor-version":[{"id":375209,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/pages\/18646\/revisions\/375209"}],"up":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/pages\/18010"}],"wp:attachment":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/media?parent=18646"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/tags?post=18646"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}