Skip to content

Instantly share code, notes, and snippets.

@strangerstudios
Last active April 8, 2021 18:32
Show Gist options
  • Save strangerstudios/6ede39145808e5325bbf7cb71c3e0c5f to your computer and use it in GitHub Desktop.
Save strangerstudios/6ede39145808e5325bbf7cb71c3e0c5f to your computer and use it in GitHub Desktop.
Clear out end dates for active subscriptions since the subs are managed by the gateway.
# oops I had PMPro setup with recurring subscriptions AND expiration dates
# I really didn't need the expiration date because the subscription is managed by the gateway
# if payment fails, the gateway will try again based on its settings
# and when the gateway gives up, it will tell PMPro through IPN/webhook to cancel the subscription
# If I have expiration dates setup for recurring subscription, PMPro is going to cancel those subscriptions
# whether they pay or not. So I need to edit the level and remove the expiration date AND
# run this script to clear out the end dates for active subscriptions.
####
# BACK UP YOUR DATABASE FIRST
####
# Note: Your DB prefix may be something other than wp_, change the query to reflect that.
UPDATE wp_pmpro_memberships_users SET enddate = '0000-00-00 00:00:00' WHERE status = 'active';
# If you have multiple membership levels and only certain levels need to be cleaned up, use a query like this.
# Ignore the query above and change the membership_id to what you need and note the DB prefix again
UPDATE wp_pmpro_memberships_users SET enddate = '0000-00-00 00:00:00' WHERE status = 'active' AND membership_id = 1;
@laurenhagan0306
Copy link

This recipe is included in the blog post on "Important Notes on Recurring Billing and Expiration Dates for Membership Levels" at Paid Memberships Pro here: https://www.paidmembershipspro.com/important-notes-on-recurring-billing-and-expiration-dates-for-membership-levels/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment