Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save andrewlimaza/095e0f4e350d2865621ba92726757f78 to your computer and use it in GitHub Desktop.
Save andrewlimaza/095e0f4e350d2865621ba92726757f78 to your computer and use it in GitHub Desktop.
Remove custom trials for members or past members. [Paid Memberships Pro]
<?php
/**
* Remove custom trials for existing and past members.
* Add this code to your site following this guide - https://www.paidmembershipspro.com/create-a-plugin-for-pmpro-customizations/
*/
function pmpro_remove_trial_for_past_members( $level ) {
// Ignore if user is not logged-in.
if ( ! is_user_logged_in() ) {
return $level;
}
$order = new MemberOrder();
$lastorder = $order->getLastMemberOrder( NULL, array( "success", "cancelled" ));
// If user currently has a membership level or previously had a membership level, remove custom trial.
if ( pmpro_hasMembershipLevel() || !empty( $lastorder ) ) {
$level->trial_limit = '0';
$level->trial_amount = '0';
}
return $level;
}
add_filter( 'pmpro_checkout_level', 'pmpro_remove_trial_for_past_members' );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment