使用MailChimp API 2.0将地址字段传递给列表/订阅不起作用

时间:2014-02-17 15:29:22

标签: api mailchimp

我正在使用以下代码将电子邮件地址添加到MailChimp中的列表中。除了ADDRESS之外,所有字段都正确发送,当我查看MailChimp时,它只是空的。

我正在使用here描述的格式,它告诉我可以传递一个字符串,每个地址分隔两个空格。

$this->mc = new Mailchimp('{api key here}');
$address = array(
    'Line 1',
    'Line 2',
    'Line 3'
);
$this->mc->lists->subscribe('{list ID here}', array('email' => '{email here}'),array(
    'MMERGE6' => $title,
    'FNAME' => $first_name,
    'LNAME' => $surname,
    'ADDRESS' => implode('  ',$address),
    'TOWN' => $town,
    'POSTCODE' => $postcode,
    'COUNTRY' => $country,
    'MMERGE7' => $organisation,
    'MMERGE8' => $role,
    'MMERGE10' => $source, 
    'MMERGE11' => (!empty($newsletter) ? 'Yes' : 'No')
));

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您在评论中提到您已切换到数组语法,因此这可能对您没有帮助,但万一其他人关心。


我能够复制这个问题 - 通过" Line 1 Line 2 Line 3" (每个值之间有两个空格)没有按预期填充我的地址字段。在将我的MailChimp列表导出到CSV文件(在应用程序中)中进行一些烦躁和比较地址字段的格式之后,看起来API调用期望五个值,每个都被分隔两个空格。

因此,要使原始代码生效,请发送如下数组:

$address = array('Line 1', 'Line 2', 'Line 3', 'Line 4', 'Line 5')

我想这五个值的语法是确保它填写地址的街道地址,城市,州,邮编和国家/地区字段。