If you’re an experienced WordPress user or just looking to build a membership website using WordPress, it’s likely you’ve heard of MemberPress. Recently, I was considering building a new membership site selling downloads and I was interested in using MemberPress for the project. This post is an overall review of MemberPress and my experience in building this type of website.
MemberPresswill give you the ability to easily create, manage and track membership subscriptions and digital products. In addition to these powerful abilities, MemberPress will allow you to grant and revoke access to posts, pages, categories, tags, feeds, communities and digital files based on what products your users have purchased or subscribed to.
- Powerful Membership Options
- Unlimited Membership Products (Levels)
- Tight Control with Access Rules
- Create Upgrade/Downgrade Paths with Product Groups
- PayPal, Stipe, and Authorize.net Integration
- Front End Login and User Account Management
- Easy Member Management for Admins
- Dynamic Reports to Monitor Performance
- Easy Coupon Management
Overall, MemberPress is a great membership plugin and it has a ton of great features. What I like most about is its standard integration with Stripe, content dripping, and and easy protection of entire post categories, child pages, etc. For your standard membership website that requires you simply protect content on pages, posts, and custom post types, I would put MemberPress in the top 3 membership plugins for WordPress.
Protecting Downloads with MemberPress
I recently began building out the test website to see how it performed after reading a post about how MemberPress didn’t cut it when it comes to downloadable products. When I purchased it, I thought MemberPress would be an all-in-one solution for selling things like software on a membership basis and I wanted to find a way.
After getting everything set up, the time came for me to upload my downloadable products and protect them from non-members. At first, I thought doing so was pretty cumbersome because there is no admin area for you to do this. With other membership plugins that protect downloads, you have a nice admin area that lets you upload and protect downloads that you intend to sell. This isn’t the case with MemberPress. However, after some research (and an unanswered support request), I gathered that I needed to protect the files using a Custom URI rule. I uploaded a “downloads” directory containing the individual downloads to the root of my site and set the Custom URI rule to protect the /downloads path. My thought was that MemberPress would naturally protect the files within the “downloads” folder. For accessing the downloads, I created a page to list the available files and I protected this page using another rule. Everything seemed locked down and ready to go.
Results: Not Good.
When I first learned that I’d need to protect downloadable content via the Custom URI rule, I thought the amazing flexibility greatly made up for the lack of a UI for this feature. After repeated testing, I feel Caseproof (owners of MemberPress) needs to fix their downloadable product feature. The process of setting the protections was great once I found out more about the Custom URI, a great feature if it worked completely. The problem? The file wasn’t restricted to members only. A normal user would go through the registration process, complete checkout, sign into their account, then be redirected to their account page. On the account page, I added a navigation link for “Downloads”, a child page of “My Account”. For good measure, I added a rule to protect this page. I tested the access to these pages and everything worked accordingly. Since the download links were on a protected page, this would protect the files to an average user. The problem was in protecting the actual file. When I pasted the download link into the browser, hello download! I thought maybe it was downloading the file because I was signed in as an Administrator so I logged out and tried again. Again, the download was successful. I triple checked the Custom URI rule that was protecting the downloads directory I uploaded and the URLs and there were no visible mistakes on my part.
UPDATE: I cannot speak to the use of Amazon S3 with MemberPress but I assume it will work just fine. I plan to rework this situation from square one just in case I was missing something the first time around. I’ll try it with both local files and Amazon S3.
There are numerous plugins that let you protect downloadable files using a membership sales model. One of my favorite is with WooCommerce with the Subscriptions and Groups Extensions (the Group extension requires the free Groups plugin). If you’re strictly selling membership and want to get rid of the WooCommerce Shop and Product pages, read this post by Chris Lema.
This post will be updated if any changes are made to MemberPress that resolves the download protection problem.