我想通过MailChimp API将订阅者添加到兴趣组。
这是我的$merge_vars
数组:
$merge_vars = array(
'GROUPINGS' => array(
0 => array(
'id' => 17385, // The group list ID
'groups' => "Test 123", // A test group, that does exist
)
)
);
这就是我更新会员的方式:
$update = $mc->lists->updateMember(self::$mainListID, $email, $merge_vars);
这是var_dump($merge_vars)
:
array(1) {
["GROUPINGS"]=>
array(1) {
[0]=>
array(2) {
["id"]=>
int(17385)
["groups"]=>
string(8) "Test 123"
}
}
}
和$email
是一个结构,这里是$var_dump($email)
:
array(1) {
["email"]=>
string(11) "my@mail.com"
}
我即将被分散注意力,因为API没有返回错误,一切似乎都很顺利,除了用户没有被添加到列表中的大问题。
我看过this question这帮助我到目前为止,但它使用的API版本是1.3,可能与它有关。
我做错了什么?
答案 0 :(得分:15)
好吧,我明白了。
虽然我可以宣誓我已经尝试过这种方式......组必须是一个数组,即使对于一个组也是如此。
我的代码现在:
$merge_vars = array(
'GROUPINGS'=> array(
array(
'id' => 17385,
'groups' => array($post['listName'])
)
)
);
$mc->lists->updateMember(self::$mainListID, $email, $merge_vars);
完美无缺。
答案 1 :(得分:2)
对我来说,使用名称代替 id 组。
$merge_vars = array(
'groupings'=> array(
array(
'name' => 'Group Name',
'groups' => array('Group item name')
)
)
);
答案 2 :(得分:1)
同意@Sanaco
添加此示例以获取更多复选框
$option1=$_POST['xxxx'];
$option2=$_POST['xxxx'];
$option3=$_POST['xxxx'];
'GROUPINGS'=> array(
array(
'id' => 123456,
'groups' => array($option1, $option2, $option3)
)
)