我正在使用以下代码将电子邮件地址添加到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')
));
我做错了什么?
答案 0 :(得分:1)
您在评论中提到您已切换到数组语法,因此这可能对您没有帮助,但万一其他人关心。
我能够复制这个问题 - 通过" Line 1 Line 2 Line 3" (每个值之间有两个空格)没有按预期填充我的地址字段。在将我的MailChimp列表导出到CSV文件(在应用程序中)中进行一些烦躁和比较地址字段的格式之后,看起来API调用期望五个值,每个都被分隔两个空格。
因此,要使原始代码生效,请发送如下数组:
$address = array('Line 1', 'Line 2', 'Line 3', 'Line 4', 'Line 5')
我想这五个值的语法是确保它填写地址的街道地址,城市,州,邮编和国家/地区字段。