Skip to content

Releases: strangerstudios/paid-memberships-pro

3.7.1 - 2026-03-25

25 Mar 17:59

Choose a tag to compare

  • BUG FIX: Fixed some admin pages not saving due to POST redirect in list table referer cleanup. #3624 (@kimcoleman)
  • BUG FIX: Fixed PHP 8.1 deprecation warnings in restricted files functions on Windows servers with misconfigured upload directories. #3623 (@flintfromthebasement)
  • DEPRECATED: Deprecated the PayPal Express gateway. PayPal is retiring the NVP/SOAP API that PayPal Express relies on. A new PayPal integration is coming soon. #3622 (@dparker1005)
  • DEPRECATED: Renamed the Website Payments Pro gateway slug from paypal to paypalwpp to free the paypal slug for the upcoming PayPal REST API Add On. #3622 (@dparker1005)

3.7 - 2026-03-23

23 Mar 14:47

Choose a tag to compare

  • FEATURE: Added native profile picture (avatar) support, allowing members to upload custom avatars managed entirely within PMPro instead of relying on Gravatar. #3597 (@ideadude)
  • FEATURE: Added a Quick Search feature for navigating Memberships admin pages. #3563 (@dparker1005)
  • FEATURE: Added Liquid-style template rendering for email bodies with support for variables, filters, and conditionals. #3584 (@dparker1005)
  • FEATURE: Added email logging for all emails sent by PMPro. The new pmpro_should_log_email filter can be used to enable email logging for non-PMPro emails as well. #3573, #3581 (@dparker1005)
  • ENHANCEMENT: Added sidebar filter panels for the orders and subscriptions admin pages with support for level, status, date range, discount code, gateway, and total filters. #3602 (@dparker1005)
  • ENHANCEMENT: Added To, CC, and BCC settings to the Email Templates editor. #3588 (@kimcoleman)
  • ENHANCEMENT: Members and orders CSV exports now use Action Scheduler for improved reliability on large datasets. #3543 (@dalemugford)
  • ENHANCEMENT: Added optional Action Scheduler support for deferrable webhook events. #3589 (@dparker1005)
  • ENHANCEMENT: Added Site Health critical issue notification when plugins are using incorrect folder names. #3553 (@andrewlimaza)
  • ENHANCEMENT: Added a restricted directory check to detect and report issues with the protected files directory. #3557 (@dalemugford)
  • ENHANCEMENT: Improved support for reCAPTCHA v3 with score validation, defaulting to 0.5 and customizable via the pmpro_recaptcha_v3_min_score filter. #3564 (@andrewlimaza)
  • ENHANCEMENT: Adjusted the Update Billing page to no longer automatically redirect away to the account page. #3566 (@andrewlimaza)
  • ENHANCEMENT: Updated the Subscriptions admin screens to match the orders admin screens for view, edit, and link styling. #3568 (@kimcoleman)
  • ENHANCEMENT: Removed use of the deprecated SQL_CALC_FOUND_ROWS modifier across all queries. #3571 (@dparker1005)
  • ENHANCEMENT: Consolidated membership signup and cancellation queries for improved performance on dashboard reports. #3574 (@dparker1005)
  • ENHANCEMENT: Now caching the Members Per Level report for improved dashboard performance. #3580 (@dparker1005)
  • ENHANCEMENT: Added membership_id as a default column in the Members List CSV export. #3604 (@andrewlimaza)
  • ENHANCEMENT: Now supporting light-dark values for contextual message CSS custom properties. #3606 (@kimcoleman)
  • ENHANCEMENT: Added PMPro icon to the admin menu and updated the top menu bar to use an icon with screen reader text. #3607 (@kimcoleman)
  • BUG FIX/ENHANCEMENT: Updated the checkout form submit handler to improve reliability of payment processing. #3545 (@dwanjuki)
  • BUG FIX/ENHANCEMENT: Updated the capability check for viewing admin user fields to use pmpro_edit_members. #3561 (@dparker1005)
  • BUG FIX: Fixed dependencies for the content visibility block component to prevent enqueue issues. #3538 (@dparker1005)
  • BUG FIX: Fixed a default height prop warning in block editor components. #3540 (@dwanjuki)
  • BUG FIX: Fixed a console warning in WordPress 6.3+ by moving block asset enqueuing to the enqueue_block_assets hook. #3549 (@andrewlimaza)
  • BUG FIX: Fixed slashed level names displaying with backslashes in the setup wizard. #3617 (@dparker1005)
  • REFACTOR: Refactored the Stripe webhook handler into a new PMPro_Stripe_Webhook_Handler class. #3589 (@dparker1005)
  • REFACTOR: Removed unused test scripts. #3600 (@dparker1005)
  • DEPRECATED: Marked the Subscription Check Add On as deprecated on the Add Ons page. #3601 (@dwanjuki)
  • DEPRECATED: Reading webhook status via pmpro_doing_webhook() is now deprecated. Use pmpro_doing_webhook( $gateway, true ) for write mode only. #3603 (@dparker1005)
  • DEPRECATED: The pmpro_before_members_list_csv_export and pmpro_after_members_list_csv_export actions are deprecated and no longer fired. #3543 (@dalemugford)
  • DEPRECATED: Removed bundled core translation files to reduce the shipped plugin package size. #3605 (@dparker1005)

3.7 RC2 - 2026-03-16

16 Mar 15:04

Choose a tag to compare

3.7 RC2 - 2026-03-16 Pre-release
Pre-release
  • FEATURE: Added native profile picture (avatar) support, allowing members to upload custom avatars managed entirely within PMPro instead of relying on Gravatar. #3597 (@ideadude)
  • FEATURE: Added a Quick Search feature for navigating Memberships admin pages. #3563 (@dparker1005)
  • FEATURE: Added Liquid-style template rendering for email bodies with support for variables, filters, and conditionals. #3584 (@dparker1005)
  • FEATURE: Added email logging for all emails sent by PMPro. #3573, #3581 (@dparker1005)
  • ENHANCEMENT: Added sidebar filter panels for the orders and subscriptions admin pages with support for level, status, date range, discount code, gateway, and total filters. #3602 (@dparker1005)
  • ENHANCEMENT: Added To, CC, and BCC settings to the Email Templates editor. #3588 (@kimcoleman)
  • ENHANCEMENT: Members and orders CSV exports now use Action Scheduler for improved reliability on large datasets. #3543 (@dalemugford)
  • ENHANCEMENT: Added optional Action Scheduler support for deferrable webhook events. #3589 (@dparker1005)
  • ENHANCEMENT: Added Site Health critical issue notification when plugins are using incorrect folder names. #3553 (@andrewlimaza)
  • ENHANCEMENT: Added a restricted directory check to detect and report issues with the protected files directory. #3557 (@dalemugford)
  • ENHANCEMENT: Improved support for reCAPTCHA v3 with score validation, defaulting to 0.5 and customizable via the pmpro_recaptcha_v3_min_score filter. #3564 (@andrewlimaza)
  • ENHANCEMENT: Adjusted the Update Billing page to no longer automatically redirect away to the account page. #3566 (@andrewlimaza)
  • ENHANCEMENT: Updated the Subscriptions admin screens to match the orders admin screens for view, edit, and link styling. #3568 (@kimcoleman)
  • ENHANCEMENT: Removed use of the deprecated SQL_CALC_FOUND_ROWS modifier across all queries. #3571 (@dparker1005)
  • ENHANCEMENT: Consolidated membership signup and cancellation queries for improved performance on dashboard reports. #3574 (@dparker1005)
  • ENHANCEMENT: Now caching the Members Per Level report for improved dashboard performance. #3580 (@dparker1005)
  • ENHANCEMENT: Added membership_id as a default column in the Members List CSV export. #3604 (@andrewlimaza)
  • ENHANCEMENT: Now supporting light-dark values for contextual message CSS custom properties. #3606 (@kimcoleman)
  • ENHANCEMENT: Added PMPro icon to the admin menu and updated the top menu bar to use an icon with screen reader text. #3607 (@kimcoleman)
  • BUG FIX/ENHANCEMENT: Updated the checkout form submit handler to improve reliability of payment processing. #3545 (@dwanjuki)
  • BUG FIX/ENHANCEMENT: Updated the capability check for viewing admin user fields to use pmpro_edit_members. #3561 (@dparker1005)
  • BUG FIX: Fixed dependencies for the content visibility block component to prevent enqueue issues. #3538 (@dparker1005)
  • BUG FIX: Fixed a default height prop warning in block editor components. #3540 (@dwanjuki)
  • BUG FIX: Fixed a console warning in WordPress 6.3+ by moving block asset enqueuing to the enqueue_block_assets hook. #3549 (@andrewlimaza)
  • BUG FIX: Fixed slashed level names displaying with backslashes in the setup wizard. #3617 (@dparker1005)
  • REFACTOR: Refactored the Stripe webhook handler into a new PMPro_Stripe_Webhook_Handler class. #3589 (@dparker1005)
  • REFACTOR: Removed unused test scripts. #3600 (@dparker1005)
  • DEPRECATED: Marked the Subscription Check Add On as deprecated on the Add Ons page. #3601 (@dwanjuki)
  • DEPRECATED: Reading webhook status via pmpro_doing_webhook() is now deprecated. Use pmpro_doing_webhook( $gateway, true ) for write mode only. #3603 (@dparker1005)
  • DEPRECATED: The pmpro_before_members_list_csv_export and pmpro_after_members_list_csv_export actions are deprecated and no longer fired. #3543 (@dalemugford)
  • DEPRECATED: Removed bundled core translation files to reduce the shipped plugin package size. #3605 (@dparker1005)

3.6.6 - 2026-03-13

13 Mar 15:35

Choose a tag to compare

  • SECURITY: Added capability and nonce checks to Stripe webhook AJAX management endpoints. #3615 (@dparker1005)
  • SECURITY: Added shared-secret token validation for the deprecated Authorize.net ARB Silent Posts integration with a configurable pmpro_authnet_silent_post_token option in gateway settings. #3598 (@dparker1005)
  • BUG FIX: Fixed an operator precedence bug causing corechart.js to load on all report pages. #3609 (@flintfromthebasement)
  • BUG FIX: Fixed an "Attempt to read property ID on null" warning in display post states. #3599 (@dwanjuki)

3.7 RC1 - 2026-03-10

10 Mar 16:40

Choose a tag to compare

3.7 RC1 - 2026-03-10 Pre-release
Pre-release
  • FEATURE: Added native profile picture (avatar) support, allowing members to upload custom avatars managed entirely within PMPro instead of relying on Gravatar. #3597 (@ideadude)
  • FEATURE: Added a Quick Search feature for navigating Memberships admin pages. #3563 (@dparker1005)
  • FEATURE: Added Liquid-style template rendering for email bodies with support for variables, filters, and conditionals. #3584 (@dparker1005)
  • FEATURE: Added email logging for all emails sent by PMPro. #3573, #3581 (@dparker1005)
  • ENHANCEMENT: Added sidebar filter panels for the orders and subscriptions admin pages with support for level, status, date range, discount code, gateway, and total filters. #3602 (@dparker1005)
  • ENHANCEMENT: Added To, CC, and BCC settings to the Email Templates editor. #3588 (@kimcoleman)
  • ENHANCEMENT: Members and orders CSV exports now use Action Scheduler for improved reliability on large datasets. #3543 (@dalemugford)
  • ENHANCEMENT: Added optional Action Scheduler support for deferrable webhook events. #3589 (@dparker1005)
  • ENHANCEMENT: Added Site Health critical issue notification when plugins are using incorrect folder names. #3553 (@andrewlimaza)
  • ENHANCEMENT: Added a restricted directory check to detect and report issues with the protected files directory. #3557 (@dalemugford)
  • ENHANCEMENT: Improved support for reCAPTCHA v3 with score validation, defaulting to 0.5 and customizable via the pmpro_recaptcha_v3_min_score filter. #3564 (@andrewlimaza)
  • ENHANCEMENT: Adjusted the Update Billing page to no longer automatically redirect away to the account page. #3566 (@andrewlimaza)
  • ENHANCEMENT: Updated the Subscriptions admin screens to match the orders admin screens for view, edit, and link styling. #3568 (@kimcoleman)
  • ENHANCEMENT: Removed use of the deprecated SQL_CALC_FOUND_ROWS modifier across all queries. #3571 (@dparker1005)
  • ENHANCEMENT: Consolidated membership signup and cancellation queries for improved performance on dashboard reports. #3574 (@dparker1005)
  • ENHANCEMENT: Now caching the Members Per Level report for improved dashboard performance. #3580 (@dparker1005)
  • ENHANCEMENT: Added membership_id as a default column in the Members List CSV export. #3604 (@andrewlimaza)
  • ENHANCEMENT: Added shared-secret token validation for the deprecated Authorize.net ARB Silent Posts integration with a configurable pmpro_authnet_silent_post_token option in gateway settings. #3598 (@dparker1005)
  • ENHANCEMENT: Now supporting light-dark values for contextual message CSS custom properties. #3606 (@kimcoleman)
  • ENHANCEMENT: Added PMPro icon to the admin menu and updated the top menu bar to use an icon with screen reader text. #3607 (@kimcoleman)
  • BUG FIX/ENHANCEMENT: Updated the checkout form submit handler to improve reliability of payment processing. #3545 (@dwanjuki)
  • BUG FIX/ENHANCEMENT: Updated the capability check for viewing admin user fields to use pmpro_edit_members. #3561 (@dparker1005)
  • BUG FIX: Fixed dependencies for the content visibility block component to prevent enqueue issues. #3538 (@dparker1005)
  • BUG FIX: Fixed a default height prop warning in block editor components. #3540 (@dwanjuki)
  • BUG FIX: Fixed a console warning in WordPress 6.3+ by moving block asset enqueuing to the enqueue_block_assets hook. #3549 (@andrewlimaza)
  • BUG FIX: Fixed an "Attempt to read property ID on null" warning in display post states. #3599 (@dwanjuki)
  • REFACTOR: Refactored the Stripe webhook handler into a new PMPro_Stripe_Webhook_Handler class. #3589 (@dparker1005)
  • REFACTOR: Removed unused test scripts. #3600 (@dparker1005)
  • DEPRECATED: Marked the Subscription Check Add On as deprecated on the Add Ons page. #3601 (@dwanjuki)
  • DEPRECATED: Reading webhook status via pmpro_doing_webhook() is now deprecated. Use pmpro_doing_webhook( $gateway, true ) for write mode only. #3603 (@dparker1005)
  • DEPRECATED: The pmpro_before_members_list_csv_export and pmpro_after_members_list_csv_export actions are deprecated and no longer fired. #3543 (@dalemugford)
  • DEPRECATED: Removed bundled core translation files to reduce the shipped plugin package size. #3605 (@dparker1005)

3.6.5 - 2026-02-26

26 Feb 14:55

Choose a tag to compare

  • SECURITY: Gated the unverified Stripe webhook event fallback behind a new pmpro_stripe_webhook_allow_unverified_post_event filter, which defaults to false. #3592 (@dparker1005)
  • ENHANCEMENT: Updated links to the Member Directory and Podcasting Use Case landing pages and hubs. #3593 (@kimcoleman)
  • ENHANCEMENT: Added a new pmpro_memberships_widget_periods filter to allow customizing the time periods shown in the Memberships Report widget. (@kimcoleman)
  • ENHANCEMENT: Added a new icon for the PMPro Kit Add On. #3575 (@kimcoleman)
  • ENHANCEMENT: Now clearing the object cache when user fields are created, updated, or deleted to ensure changes show immediately when using persistent object caching. #3565 (@dalemugford)
  • ENHANCEMENT: Updated the WP Fusion Lite integration through v3.47.6. #3583 (@dparker1005)
  • BUG FIX/ENHANCEMENT: Now ignoring PayPal error code 11556 when cancelling a subscription that is already inactive to avoid unnecessary admin notifications. #3572 (@dparker1005)
  • BUG FIX: Fixed an issue where the field group description was not showing due to an incorrect variable reference. #3591 (@mircobabini)
  • BUG FIX: Fixed an issue where failed Stripe recurring payment orders were missing card info and billing address data. #3590 (@dparker1005)
  • BUG FIX: Fixed an issue where the membership level billing amount could be recalculated incorrectly when processing checkout via webhook, potentially losing discount code pricing. #3585 (@dparker1005)
  • BUG FIX: Fixed an issue where the timestamp for new orders created in the admin could default to 1970 when the site timezone is not UTC. #3582 (@dparker1005)
  • BUG FIX: Resolved PHP 8.5+ deprecation warnings for non-canonical cast names. #3560 (@dwanjuki)

3.6.4 - 2026-01-08

08 Jan 17:29

Choose a tag to compare

  • ENHANCEMENT: Adding a new !!order_url!! email template variable to checkout email templates. #3555 (@kimcoleman)
  • ENHANCEMENT: Now limiting failed payment emails to be sent a maximum of once daily per subscription. #3552 (@dparker1005)
  • ENHANCEMENT: Now cleaning up library conflict records that are older than 7 days. #3554 (@dalemugford)
  • BUG FIX/ENHANCEMENT: Discount codes now expire at the end of the date set as the "Expiration Date" instead of at the start of that date. #3559 (@dparker1005)
  • BUG FIX/ENHANCEMENT: Now ignoring Stripe charge.failed webhook events for subscriptions that have already been cancelled in Stripe which could interfere with processing the subsequent customer.subscription.deleted webhook event. #3556 (@dparker1005)

3.6.3 - 2025-12-15

15 Dec 19:07

Choose a tag to compare

  • SECURITY: No longer prepopulating the password field on the checkout page after a failed checkout attempt. #3551 (@dparker1005)
  • BUG FIX/ENHANCEMENT: Updated membership actions to run more frequently to improve support for hourly memberships. #3547 (@andrewlimaza)
  • BUG FIX/ENHANCEMENT: Improved the styling for nested .pmpro_card elements. #3539 (@kimcoleman)
  • BUG FIX: Fixed the HTML structure when displaying image-type file fields to improve appearance. #3537 (@kimcoleman)
  • BUG FIX: Corrected the links shown for the Stripe Tax setting. #3546 (@dwanjuki)

3.6.2 - 2025-11-20

20 Nov 15:49

Choose a tag to compare

  • ENHANCEMENT: Stripe subscriptions will no longer be created with an application fee or will have the fee immediately removed when the initial payment is complete. Application fees will then be added per-invoice during the invoice.created webhook to ensure that fees are only charged when PMPro is actively managing the subscription. #3535 (@dparker1005)
  • ENHANCEMENT: Updated the Stripe webhook handler to remove application fees from existing subscriptions over time during the invoice.upcoming webhook event. This helps to ensure that websites that have stopped using Stripe Connect will not be charged the 2% application fee. #3535 (@dparker1005)
  • ENHANCEMENT: Updated the PayPal IPN handler to use the add_order_note() method when adding the IPN ID to an order. #3534 (@dparker1005)
  • BUG FIX: Restored fallback logic for pulling billing addresses from Stripe customer objects and previous PMPro orders when a Stripe recurring payment is received without a billing address set on the payment method. #3533 (@dparker1005)
  • BUG FIX: Fixed an issue where correcting data in fields with validation errors did not clear the error border from the input. #3531 (@andrewlimaza)
  • BUG FIX: Fixed an issue where the Edit Member sidebar may not show the correct user field panels after changing a user's membership level. #3532 (@dparker1005)

3.6.1 - 2025-11-12

12 Nov 16:16

Choose a tag to compare

  • ENHANCEMENT: Now showing TOS Consent information on the admin "View Order" page. #3520 (@kimcoleman)
  • ENHANCEMENT: Added a new helper method add_order_note() to the MemberOrder class. #3524 (@dparker1005)
  • ENHANCEMENT: Added icons for WP Activity Log and WP Fusion Lite. #3521 (@andrewlimaza)
  • BUG FIX/ENHANCEMENT: Now updating the next payment date for subscriptions when there is a failed payment. #3526 (@dparker1005)
  • BUG FIX: Fixed an issue where post restrictions could not be removed when using the classic editor. #3530 (@dparker1005)
  • BUG FIX: Fixed an issue where page contents would not load in the Beaver Builder editor if the post is restricted. #3529 (@dparker1005)
  • BUG FIX: Fixed an issue where plus characters in usernames may be converted into spaces when shown in login page error messages. #3519 (@andrewlimaza)
  • BUG FIX: Fixed a deprecation warning when installing Add Ons from the Membership > Add Ons screen. #3525 (@andrewlimaza)