Using Gravity Forms ‘gform_mailchimp_keep_existing_groups’ PHP filter

The gform_mailchimp_keep_existing_groups filter allows you to modify whether a user who is already subscribed to your Mailchimp list has their groups replaced when submitting the form a second time. By default, the original groups are kept, and any new ones are added.

Usage

add_filter('gform_mailchimp_keep_existing_groups', 'custom_function_name');
function custom_function_name($keep_existing) {
    // Your custom code here
    return $keep_existing;
}

Parameters

  • $keep_existing (boolean): Whether to keep existing groups when updating the user’s subscription (default is true).

More information

See Gravity Forms Docs: gform_mailchimp_keep_existing_groups

Examples

Replace groups on re-submission

This example sets $keep_existing to false, so that the groups are replaced when the user re-submits the form.

add_filter('gform_mailchimp_keep_existing_groups', 'replace_groups_on_resubmission');
function replace_groups_on_resubmission($keep_existing) {
    return false;
}

Keep existing groups for a specific form

This example keeps existing groups when updating the user’s subscription for a specific form with an ID of 1.

add_filter('gform_mailchimp_keep_existing_groups_1', 'keep_existing_groups_for_specific_form');
function keep_existing_groups_for_specific_form($keep_existing) {
    return $keep_existing;
}

Replace groups for a specific form

This example replaces groups when updating the user’s subscription for a specific form with an ID of 2.

add_filter('gform_mailchimp_keep_existing_groups_2', 'replace_groups_for_specific_form');
function replace_groups_for_specific_form($keep_existing) {
    return false;
}

Keep existing groups based on a custom condition

This example keeps existing groups if the custom condition is met.

add_filter('gform_mailchimp_keep_existing_groups', 'keep_existing_groups_based_on_condition');
function keep_existing_groups_based_on_condition($keep_existing) {
    // Your custom condition here
    if (/* Your custom condition */) {
        return $keep_existing;
    } else {
        return false;
    }
}

Replace groups based on a custom condition

This example replaces groups if the custom condition is met.

add_filter('gform_mailchimp_keep_existing_groups', 'replace_groups_based_on_condition');
function replace_groups_based_on_condition($keep_existing) {
    // Your custom condition here
    if (/* Your custom condition */) {
        return false;
    } else {
        return $keep_existing;
    }
}