2016-05-16 47 views
3

我运行下面的代码(我已经隐藏的ID),以在MailChimp列表中添加/更新用户的利益集团成员的集团的利益:更新使用MailChimp API V3

$mailchimp->patch('lists/1234567/members/' . md5('[email protected]'), [ 
    'status' => 'subscribed', 
    'merge_fields' => array(
     'FNAME' => 'Ben', 
     'LNAME' => 'Sinclair', 
    ), 
    'interests' => array(
     'abcd1234' => true, 
     'defg6789' => true, 
    ), 
]); 

interests关键是什么我遇到了问题。

我推测你放在这个键里的任何东西都会覆盖当前存在的东西。

似乎并非如此。它只会增加新的兴趣,但如果ID不在数组中,则不会删除任何新兴趣。我没有收到任何错误。

有谁知道如何覆盖利益团体?或者如果这是不可能的,是否有办法消除利益集团?

+2

您是否尝试过在PATCH中设置'false'的现有兴趣? – jonrsharpe

+0

@jonrsharpe再次感谢乔恩。再一次你是对的。不能相信。他们的文档有点模糊...... –

+2

是的,这只是一个猜测!他们还支持PUT进行编辑,也许这有不同的行为。 – jonrsharpe

回答

4

为了完成,我想添加此答案,让人们绊倒这篇文章可以找到一个快速解决方案。

$mailchimp->patch('lists/1234567/members/' . md5('[email protected]'), [ 
    'status' => 'subscribed', 
    'merge_fields' => array(
     'FNAME' => 'Ben', 
     'LNAME' => 'Sinclair', 
    ), 
    'interests' => array(
     'abcd1234' => true, // Attached 
     'defg6789' => false, // Detached 
    ) 
]); 

在这个例子中,兴趣'abcd1234'将被附加,兴趣'defg6789'将被分离。

未列出的其他兴趣将保持其原始价值。