Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
How to do MailChimp MERGE field with ADDRESS type
//Address merge types must be handled in a very specific format
function my_pmpro_mailchimp_listsubscribe_fields($fields, $user)
$user_info = get_userdata($user->ID);
$new_fields = array(
"FNAME" => $user->first_name,
"EMAIL" => $user->email,
"LNAME" => $user->last_name,
"ADDRESS" => array( 'addr1' => $user_info->pmpro_baddress1,
'addr2' => $user_info->pmpro_baddress2,
'city' => $user_info->pmpro_bcity,
'state' => $user_info->pmpro_bstate,
'zip' => $user_info->pmpro_bzipcode,
'country' => $user_info->pmpro_bcountry)
$fields = array_merge($fields, $new_fields);
return $fields;
add_action('pmpro_mailchimp_listsubscribe_fields', 'my_pmpro_mailchimp_listsubscribe_fields', 10, 2);
Copy link

kimcoleman commented Jan 4, 2021

Please also note that if the fields you are sending are new merge fields, they must first be created in Mailchimp.

You can do this manually through the Mailchimp dashboard or use the pmpro_mailchimp_merge_fields filter to create them through the API like the example recipe here:

Copy link

laurenhagan0306 commented Apr 13, 2021

This recipe is included in the blog post on "Send a Member’s Address Fields to Mailchimp" at Paid Memberships Pro here:

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