使用 MailChimp API V3 更新成员的群组兴趣
Posted
技术标签:
【中文标题】使用 MailChimp API V3 更新成员的群组兴趣【英文标题】:Updating a member's group interests using MailChimp API V3 【发布时间】:2016-09-11 21:08:11 【问题描述】:我正在运行以下代码(我隐藏了 ID)以在 MailChimp 列表中添加/更新订阅者的兴趣组:
$mailchimp->patch('lists/1234567/members/' . md5('test@test.com'), [
'status' => 'subscribed',
'merge_fields' => array(
'FNAME' => 'Ben',
'LNAME' => 'Sinclair',
),
'interests' => array(
'abcd1234' => true,
'defg6789' => true,
),
]);
interests
键是我遇到的问题。
我认为您在此密钥中输入的任何内容都会覆盖当前存在的内容。
好像不是这样的。它只会添加新的兴趣,但如果 ID 不在数组中,则不会删除任何兴趣。我没有收到任何错误。
有人知道如何覆盖兴趣组吗?或者如果这不可能,有没有办法移除利益集团?
【问题讨论】:
您是否尝试在 PATCH 中将现有兴趣设置为false
?
是的,这只是猜测!它们还支持 PUT 进行编辑,可能具有不同的行为。
很高兴您解决了这个问题。通常需要能够直接打开或关闭兴趣,而不必弄清楚所有其他兴趣的当前状态,这就是它以这种方式工作的原因。
@TooMuchPete 它的工作方式很好而且很有意义,他们需要做的就是更好地记录它,这样我就不会扯头发了。
@TooMuchPete 不确定你在读什么,但它如何处理添加/删除兴趣组对我来说非常模糊。
【参考方案1】:
为了完成,我想添加这个答案,以便偶然发现这篇文章的人可以找到一个快速的解决方案。
$mailchimp->patch('lists/1234567/members/' . md5('test@test.com'), [
'status' => 'subscribed',
'merge_fields' => array(
'FNAME' => 'Ben',
'LNAME' => 'Sinclair',
),
'interests' => array(
'abcd1234' => true, // Attached
'defg6789' => false, // Detached
)
]);
在本例中,兴趣“abcd1234”将被附加,兴趣“defg6789”将被分离。
未列出的其他权益将保持其原始价值。
【讨论】:
您也应该将电子邮件地址转换为小写,因为这是 MailChimp 在对电子邮件进行 MD5 处理时所期望的。以上是关于使用 MailChimp API V3 更新成员的群组兴趣的主要内容,如果未能解决你的问题,请参考以下文章
使用 MailChimp API v3.0 获取特定成员列表
使用 MailChimp API V3 通过电子邮件搜索成员
如何在 mailchimp API v3.0 上获取具有特定标签的成员总数?