- Fix: Free trials not working properly in PayPal Express.
- Fix: Older unrestricted posts being improperly treated as restricted.
- Fix: Undefined variable in rcp_stripe_charge_failed hook.
- Fix: Payments made with Authorize.net have invalid date attached.
- Fix: Register button text not passed through rcp_registration_register_button filter.
- Tweak: Stop using deprecated functions internally.
- New: Per Stripe's recommendation, load Stripe.js on all pages if Stripe is enabled. Helps with Stripe's fraud detection.
- New: Add dynamic rcp_set_status_{$status} developer hook in RCP_Member.
- New: Email admin when a new manual payment is received.
- New: Add [is_expired] shortcode for showing content to expired members only.
- New: rcp_save_settings filter for developers to use when RCP settings are saved.
- New: Option to Always/Never show excerpts, or decide on an individual post by post basis. The new option is under Restrict > Settings > Misc.
- New: Search by first/last name on the Members list page.
- Enhancement: Add a note to a member's record when the "expiring soon" email is sent.
- New: Added the rcp_export_members_get_data_row and rcp_export_payments_get_data_row filters, making it easier to custom data to member and payment exports.
- New: Introduced a new function, rcp_is_valid_currency(), to determine if a given currency code matches the currency selected in the settings.
- New: Added action hooks to the invoice template, making it easier to programmatically add information to the invoice. New hooks are: rcp_invoice_items, rcp_invoice_items_before_total_price, rcp_invoice_additional_info, rcp_invoice_after_additional_info.
- Enhancement: Set user display name to username if first and last names are not filled out during registration.
- Fix: Member notes added programmatically not saved when editing a member in the admin.
- Fix: jQuery Migrate notice on registration form.
- Fix: Login failure if username is an email address but is different from the account's actual email address.
- Fix: Two cancellation emails sent when a member cancels.
- Fix: rcp_get_current_url() not working when used behind a reverse proxy.
- Fix: Only send the trial email when a member signs up for an old style trial plan, instead of the trial and active emails.
- Fix: Remove brackets from lost password email link, making it work better with some email apps.
- Fix: Don't load gateway webhook processing when not needed, such as during ajax, cron, and admin page views.
- Fix: Totals not showing on the registration form on mobile devices.
- Fix: Trial members not getting an activation email.
- Fix: Table layout issue with [subscription_details] shortcode.
- Fix: HTML emails have extra spacing when sent through Mandrill with the WPMandrill plugin.
- Fix: Quick/bulk editing WooCommerce products no longer wipes out restriction settings.
- Fix: Incomplete email subject line on admin notifications of free trials.
- Fix: PHP notice: undefined gateway_obj on free registrations.
- Fix: Email tags not parsed on plain text emails.
- Tweak: Deprecate the unused rcp_rstrstr() function.
- Developer: Introduced can_cancel() and cancel_payment_profile() methods in RCP_Member. rcp_can_member_cancel() and rcp_cancel_member_payment_profile() are now wrappers for these new methods.
- Fix: Issue where expired and pending members were locked out of all site content, regardless of restriction settings.