2010-12-07 103 views
1

此问题涉及CampaignMonitor API PHP包装器,函数subscriberAddWithCustomFields()。Campaignmonitor:如何使用PHP包装器更新多选项(选择多个)字段

在我创建了一个自定义的多选项CampaignMonitor后端(选择多个)被称为“Subscribedto”字段,用户可以选择(复选框),他喜欢为接收简讯:“新闻&更新”和/或'来自合作伙伴的消息'。现在我想使用PHP API封装器更新这个字段,但不知道如何做到这一点。

从我的数据库:
'新闻&更新'可以是0或1
'新闻从合作伙伴'可以是0或1

下不起作用:

$extras = array('Subscribedto'=>array("News & Updates"=>0,"News from Partners"=>1)); 
$cm_res = $cm->subscriberAddWithCustomFields($email,$name, $extras); 
+0

可以让我们知道subscriberAddWithCustomFields功能的内容是什么? – Stoic 2010-12-08 07:22:00

回答

3

他们的新v3 API使这变得容易很多。在他们的论坛中查看http://www.campaignmonitor.com/forums/viewtopic.php?id=5166获取答案。

下面是我的一种形式的一些示例代码:

$wrap = new CS_REST_Subscribers($list_id, $api_key); 
     $result = $wrap->add(array(
      'EmailAddress' => $email, 
      'Name' => '', 
      'CustomFields' => array(
       array(
        'Key' => 'Events', 
        'Value' => 'Event 1' 
       ) 
      ), 
      'Resubscribe' => true 
     )); 

     //echo "Result of POST /api/v3/subscribers/{list id}.{format}\n<br />"; 
     if($result->was_successful()) { 
      $success = true; 
      $message = 'Cool! We\'ll be in touch soon.'; 
     } else { 
      $message = $result->response; 
     }