在 Mailchimp API 3.0 中添加自定义合并标签

Posted

技术标签:

【中文标题】在 Mailchimp API 3.0 中添加自定义合并标签【英文标题】:Adding Custom Merge Tags in Mailchimp API 3.0 【发布时间】:2015-12-19 15:39:09 【问题描述】:

我到处走走,但找不到通过 api v3.0 添加自定义合并标签的任何线索。文档似乎很差而且很神秘。

我看到在之前的版本中,可以通过listMergeVarAdd()方法来完成。

我想做的是动态添加任何merge_tags

如何通过 mailchimp api 3.0 添加自定义 merge_tags 以在自定义订阅表单中使用?

【问题讨论】:

【参考方案1】:

由于 v3.0 是 RESTful,因此您可以对 /3.0/lists/list_id/merge-fields 端点进行 POST 调用。您传递的数据应与List Merge Field Instance schema 匹配。

【讨论】:

你的意思是它会自动创建我传递给它的任何自定义merge_tags 我不确定你的意思。这是非常标准的 REST 行为。列表的合并字段集合位于 /3.0/lists/list_id/merge-fields,向该集合添加新字段的方式是通过 POST 到该端点。 对不起,我可以看一个例子吗? 这只允许创建一个合并标签对吗?为 Merge Tag 设置 DATA 怎么样? @MikeW:通过成员对象上的merge_fields 字段传递它。 Docs here【参考方案2】:

这是经过一些研究后的示例,可能有人会觉得它有用。

这是使用此处提供的 VATPS Wrapper https://github.com/vatps/mailchimp-rest-api

$api_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-usx";      
$mc = new MailChimp();
$mc->setApiKey($api_key);

    // Create Custom Merge Tags - Example           
    $result = $mc->post('/lists/list-id/merge-fields', array(
                    "tag" => "CUSTOM_SST",
                    "required" => false, // or true to set is as required 
                    "name" => "Custom Field",
                    "type" => "text", // text, number, address, phone, email, date, url, imageurl, radio, dropdown, checkboxes, birthday, zip
                    "default_value" => "", // anything
                    "public" => true, // or false to set it as not 
                    "display_order" => 2,
                    "help_text" => "I try to help you!"
                ));
    print_r($result);

    // Check If Merge Tags Already Exists - Example
    $result = $mc->get('/lists/list_id/merge-fields');
    print_r($result);

【讨论】:

以上是关于在 Mailchimp API 3.0 中添加自定义合并标签的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 MailChimp API 3.0 将用户添加到组

使用 API 3.0 实现 Mailchimp 双重选择加入

MailChimp API 3.0 批量/批量订阅

MailChimp API 3.0 无效资源错误

如何使用 php 将 Mailchimp API 3.0 的“购物车”和“购物车行”添加到自定义商店?

是否可以在 mailchimp API 3.0 中按成员获取细分?