Я хочу добавить подписчика в группу интересов через API MailChimp.
Это мой массив $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 не возвращает ошибку, все, кажется, идет гладко, за исключением большой проблемы, когда пользователь не добавляется в список.
Я рассмотрел этот вопрос, который помог мне дойти до сих пор, но версия API, которую он использует, составляет 1,3, и это может иметь какое-то отношение к ней.
Что я делаю не так?
Ну, я понял это.
Хотя я мог бы поклясться, что я уже пробовал это так … группы должны быть массивом даже для одной группы.
Мой код сейчас:
$merge_vars = array( 'GROUPINGS'=> array( array( 'id' => 17385, 'groups' => array($post['listName']) ) ) ); $mc->lists->updateMember(self::$mainListID, $email, $merge_vars);
Работает отлично.
Согласитесь с @Sanaco
добавьте этот пример для большего количества флажков
$option1=$_POST['xxxx']; $option2=$_POST['xxxx']; $option3=$_POST['xxxx']; 'GROUPINGS'=> array( array( 'id' => 123456, 'groups' => array($option1, $option2, $option3) ) )