我试图在Mailchimp中的现有联系人中更新(添加)新标签,但是使用下面的代码,只需更新名称,新标签就不会更新,请参见示例。
-
我为测试创建了一个“ for”。
for ($i = 0; $i < 1; $i++){ $tagsMailChimp = "P-". $i .""; } // MAILCHIMP 3.0 $apiKey = '<APIKEYHERE>'; $listId = '<LISTIDHERE>'; $email = 'JOHNDOE@JOHNDOE.COM'; $memberId = md5(strtolower($email)); $dataCenter = substr($apiKey,strpos($apiKey,'-') + 1); $url = 'https://'.$dataCenter.'.api.mailchimp.com/3.0/lists/'.$listId.'/members/'.$memberId; $json = json_encode([ 'tags' => $tagsMailChimp,'merge_fields' => [ 'FNAME' => 'JOHN','LNAME' => 'DOE' ] ]); $ch = curl_init($url); curl_setopt($ch,CURLOPT_USERPWD,'user:'.$apiKey); curl_setopt($ch,CURLOPT_HTTPHEADER,['Content-Type: application/json']); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_TIMEOUT,10); curl_setopt($ch,CURLOPT_CUSTOMREQUEST,'PATCH'); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_POSTFIELDS,$json); $result = curl_exec($ch); $httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE); curl_close($ch); echo "<pre>"; var_dump(json_decode($result)); echo "<br><br>"; var_dump($json);