Created
June 30, 2015 11:29
-
-
Save strangerstudios/81c1e425dd961095f673 to your computer and use it in GitHub Desktop.
Don't send membership expiring or expired emails for certain levels.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Don't send membership expiring or expired emails for certain levels. | |
Place this code in your active theme's functions.php or a custom plugin. | |
*/ | |
function disable_membership_expiring_emails_for_some_levels($recipient, $email) | |
{ | |
//check template | |
if($email->template == "membership_expiring" || $email->template == "membership_expired") | |
{ | |
//check level | |
if(!empty($email->data['membership_id']) && $email->data['membership_id'] == 15) | |
{ | |
//membership expiring and level is 15 | |
$recipient = NULL; | |
} | |
else | |
{ | |
//membership expired. get the user id first | |
$user = get_user_by("login", $email->data['user_login']); | |
//check the user's last level | |
if(!empty($user->ID)) | |
{ | |
global $wpdb; | |
$last_level = $wpdb->get_var("SELECT membership_id FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status != 'active' ORDER BY id DESC LIMIT 1"); | |
if(!empty($last_level) && $last_level == 15) | |
{ | |
//membership expired, level was 15 | |
$recipient = NULL; | |
} | |
} | |
} | |
} | |
return $recipient; | |
} | |
add_filter("pmpro_email_recipient", "disable_membership_expiring_emails_for_some_levels", 10, 2); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment