Home / Archive / MemberPress: Disable Reminders if a Member has Any Active Subscription
Duplicate Snippet

Embed Snippet on Your Site

MemberPress: Disable Reminders if a Member has Any Active Subscription

MemberPress reminders are triggered by each individual subscription. Thus, reminders will be automatically triggered by for example expiring subscription. This is the case even is the same member also has another active subscription.

The sample code snippet disables all reminders set in MemberPress if the user has any active subscriptions.

To exclude any type of reminder, the line of code containing the action hook related to that type of reminder should be removed. Below is the list of hooks related to different reminder types:

Reminders related to the Subscription Renews trigger: mepr-sub-expires-reminder-disable
Reminders related to the Subscription Renews trigger: mepr-sub-renews-reminder-disable
Signup Abandoned reminder: mepr-signup-abandoned-reminder-disable
Member Signs Up reminder: mepr-member-signup-reminder-disable

Thus, for example, to exclude the Member Signs Up reminder type, the following lines (containing mepr-member-signup-reminder-disable action hook) should be removed:

add_filter('mepr-member-signup-reminder-disable', 'mepr_disable_reminders', 10, 4);

Code Preview
php
<?php
add_filter('mepr-sub-expires-reminder-disable', 'mepr_disable_reminders', 10, 4);
add_filter('mepr-sub-renews-reminder-disable', 'mepr_disable_reminders', 10, 4);
add_filter('mepr-signup-abandoned-reminder-disable', 'mepr_disable_reminders', 10, 4);
add_filter('mepr-member-signup-reminder-disable', 'mepr_disable_reminders', 10, 4); 
function mepr_disable_reminders($disable_email, $reminder, $usr, $prd) {
$active_product_subscriptions = $usr->active_product_subscriptions('ids');
  // Disable reminders if member has any active subscription.
  if(!empty($active_product_subscriptions)) {
    $disable_email = true;
  }
  return $disable_email;
});

Comments

Add a Comment