Version 1.8 of Paid Memberships Pro is out with an overhaul of the gateway integration code, new statuses to track cancellations for reporting, some new language packs, and a bunch of bug fixes and enhancements.
We released a beta version of 1.8 last week. There have been some bug fixes since then. If you installed the beta, you will have to manually install 1.8 using the zip file linked below.
This update is a bit larger than the typical update. So you will want to make backups before upgrading and to test that everything works well after upgrading. In particular, if you use a custom checkout template, make sure that things still work at checkout after upgrading. We’ve done our best to preserve backwards compatibility, but your checkout templates may need to be updated.
If you are using a custom template, you might want to include this code in particular to help with iOS mobile safari compatibility:
Also, if you are using Stripe, you should upgrade the version of their API you are using from the Stripe dashboard. Go to “Account Settings” in Stripe, click on “API Keys”, and then use the form at the top to upgrade to the latest version if it is shown there.
How to Update
You can update Paid Memberships Pro from the plugins page of your WordPress dashboard. You can also get the latest version of PMPro here or version 1.8 specifically here.
The full list of updates is below:
- ENHANCEMENT: Payment gateway classes updated so all settings and checkout fields are processed via the gateway class file. This will make it easier to maintain, update, and add new gateways.
- ENHANCEMENT: Added a pmpro_after_membership_level_profile_fields hook after the “Membership Level” field dropdown on the edit profile page.
- ENHANCEMENT: Added new statuses for orders when cancelled. cancelled = cancelled by user on cancel page or via gateway, cancelled_admin = cancelled by an admin, expired = cancelled via expiration script, level_change = user upgraded/downgraded to a different level.
- ENHANCEMENT: All gateways use the $pmpro_currency global instead of getting the value via pmpro_getOption.
- ENHANCEMENT: Changing South African Rand (ZAR) to use the symbol R to the left of prices. (Thanks, Rasada)
- BUG: Fixed some translation issues on the checkout page and in level cost text. (Thanks, Jenkisan)
- ENHANCEMENT: Added plural forms of Day, Week, Month, Year to es_ES translation. Other translation files will need to as well.
- BUG: Fixed bug where the $short parameter of pmpro_getLevelCost wasn’t shortening the output in some cases. (Thanks, Kimberly Coleman)
- BUG: Fixed warning in membership dropdown on edit user/profile page. (Thanks, Thomas Sjolshagen)
- ENHANCEMENT: Added German (de_DE) translation files. (Thanks, Cedros)
- ENHANCEMENT: Added Dutch (nl_NL) translation files. (Thanks, Het Verzamelteam)
- ENHANCEMENT: Added settings links to plugins page.
- BUG: Fixed bug in Safari for iOS where checkout submission would fail after choosing “Not Now” when prompted to save the card.
- ENHANCEMENT: Added user row actions to the members list and orders list in the dashboard. Add actions using the pmpro_memberslist_user_row_actions and pmpro_orders_user_row_actions filters which work the same as the core WP user_row_actions filter.
- BUG: Fixed issues with the membership shortcode and pmpro_hasMembershipLevel function.
- ENHANCEMENT: Can now use L or -L to check if a user is logged in (L) or not (-L) in the membership shortcode or pmpro_hasMembershipLevel function.
- ENHANCEMENT: Updated to the new version of Google’s ReCaptcha.
- BUG: Fixed issue with quotes and other special characters in membership level names, descriptions, and confirmations. (Thanks, Marcelo Hinojosa)