Надеюсь на некоторую помощь, так как нигде не могу найти ответ.
Я использую следующую функцию PHP, чтобы добавить подписчика в mailchimp. Это отлично работает. Что мне нужно сделать, это добавить пользователя с одним или несколькими назначенными групповыми интересами. Так, например, у меня есть группа с именем «Test Group», которая содержит два интереса: «Test 1» и «Test 2». Как бы я изменил приведенную ниже функцию, чтобы она включала 1 или более процентов?
function mc_subscribe($email, $fname, $lname, $apikey, $listid, $server) {
$auth = base64_encode( 'user:'.$apikey );
$data = array(
'apikey' => $apikey,
'email_address' => $email,
'status' => 'subscribed',
'merge_fields' => array(
'FNAME' => $fname,
'LNAME' => $lname
)
);
$json_data = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://'.$server.'api.mailchimp.com/3.0/lists/'.$listid.'/members/');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json',
'Authorization: Basic '.$auth));
curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/2.0');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
$result = curl_exec($ch);
return $result;
};
Документация содержит достаточно информации, чтобы понять это, хотя и не говорит об этом напрямую.
Вам нужно будет добавить interests
возражать против вашего запроса. Должны быть интересующие идентификаторы как ключи и логические значения как ложные. Таким образом, вы можете обновить свой код выше следующим образом:
$data = array(
'email_address' => $email,
'status' => 'subscribed',
'merge_fields' => array(
'FNAME' => $fname,
'LNAME' => $lname
),
'interests' => array(
'9143cf3bd1': true
)
);
Обратите внимание, что вам нужно получить идентификаторы из API, поскольку их невозможно получить из веб-приложения, а также вы должны удалить apikey
элемент из вашего запроса больше не используется.
Других решений пока нет …