After several months of development, we are pleased to announce the first beta version of Restrict Content Pro 2.9. This is a major update that includes a number of significant improvements, including better payment record tracking, options to restrict complete post types, enhanced user-role restrictions, subscription renewal reminders, and more.
How to test the beta
In order to help ensure the final release of 2.9 goes as smoothly as possible, we need your help testing this beta version.
Testing the beta is very simple. Simply log into your testing site that has Restrict Content Pro installed and activated and navigate to Restrict → Settings → Misc and check the box for Opt into beta versions:
The beta update will now be available as a standard WordPress plugin update from your Plugins page, though it could take up to a few hours for the notification to appear.
See our FAQ if you have any questions or issues updating to the beta version.
Note: we do not recommend you test the beta on a live site. Use a testing site. While we do our very best to not cause issues during updates, sometimes issues do slip through unnoticed, so having a staging / testing site is very important.
Subscription renewal reminders
In Restrict Content Pro 2.9, we have introduced the ability to email paid subscribers a reminder notice before their subscription’s renewal payment is processed. This lets you set up courtesy emails that can dramatically reduce charge-back claims and abuse reports from customers that fail to remember their subscription is still active. The system also allows site admins to configure any number of renewal reminders, each sent at a different time period.
Restrict complete post types
We offer a number of ways to configure content restriction in Restrict Content Pro and in 2.9 we’ve added another: complete post type restrictions. This allows site owners to easily restrict all entries in any public post type (like those registered in many popular plugins) to paid subscribers or members with specific user roles or subscription levels.
The screenshots below illustrate how this looks for the Downloads post type registered through our sister project, Easy Digital Downloads.
The Restrict Access menus are automatically registered for all public post types.
Support for custom user role restrictions
Our content restriction options have always supported limiting content access to just members with a specific user role, but up until now the restrictions were limited to the default roles provided by WordPress. In Restrict Content Pro 2.9 we have added support for limiting content access to any registered user role, such as those provided by many of the popular plugins.
Automatically register users to subscription
It is pretty common for Restrict Content Pro customers to utilize other plugins, such as Gravity Forms, to create user accounts. When this is done it is helpful to be able to automatically register these users to a subscription level so Restrict Content Pro recognizes them. In 2.9 this is now fully supported through a new option added to the Settings → Misc.
While we’d love to say everything always goes perfectly, the reality is that sometimes systems do not work quite as they are expected. In order to help make it easier to track down unexpected or non-functioning behavior, we have add a new set of debug tools to Restrict Content Pro.
Debug mode can be enabled from Settings → Misc:
Once enabled, a new Debug tab will be added to the Tools page:
The debug log records events as they happen in RCP, such as a payment being processed, accounts being cancelled, registrations being submitted, etc. It’s essentially a historical view of what was done when.
In total, we have made more than 19 distinct sets of improvements in Restrict Content Pro 2.9. We have also fixed 24 different bugs.
- The [restrict] shortcode now permits multiple subscription level IDs to be specified
- The redirect performed after logging in now uses wp_safe_redirect()
- A template tag has been added to email settings for retrieving the URL to the most recent invoice on a member’s account
- Password reset emails are now sent in the standard HTML email as all other RCP emails
- The process-data.php file has been broken up into multiple PHP files to make it easier for developers
- RCP_Payment_Gateway now includes better inline documentation
- The register-single.php template file now includes a log in link
- A new action hook has been added that fires after successful member registration
- Payment records now get created earlier and include a pending status
- Payment records now store the discount code that was used
- Payment records now store the exact subscription level ID related to the payment
- Payment records now store the slug of the payment gateway used, such as stripe
- Admin screens for subscription levels, discount codes, and payment records now include status filters
- Invoice download links are now available from the edit member screen
- Memberships were not properly renewed in Authorize.net if they included a free trial
- PayPal Express could return a fatal error on the confirmation screen for some PayPal accounts
- Stripe customer ID not saved early enough during registration
- rcp_member_get_expiration_date filter did not include necessary $formatted and $pending variables
- WooCommerce: products in restricted category/tag were still accessible via direct URL
- WooCommerce: active members could not view products restricted to “Active subscribers only”
- Expiration date incorrectly calculated for manual renewals
- Subscriptions that auto renew but started with a 100% discount expire improperly
- Registration submit button disabled improperly if reCaptcha is enabled but API keys are not entered
- Stripe Checkout modal shows price even when signing up for a free trial with the [register_form_stripe] shortcode
- Filter in rcp_currency_filter() not used properly
- Subscription ID saved to Stripe customer metadata before subscription is actually created in Stripe
- Pending users can view content protected by [restrict] shortcode
- Duplicate subscriptions created on customers in Stripe if their customer record had a previously delinquent subscription
Release date for 2.9
The beta version of 2.9 is available today and we hope to release the final version within two weeks, on or near the 8th of August, 2017.