Mailchimp 使用 php 和 drupal 8 将标签添加到列表中的现有成员
Posted
技术标签:
【中文标题】Mailchimp 使用 php 和 drupal 8 将标签添加到列表中的现有成员【英文标题】:Mailchimp add tags to existing member in a list with php and drupal 8 【发布时间】:2021-01-16 07:03:51 【问题描述】:在将成员添加到列表后,我想在 Drupal 8 的 mailchimp 列表中添加一个标签。我使用 php。
根据我在以下位置找到的信息: https://mailchimp.com/developer/guides/organize-contacts-with-tags/#label-a-contact-with-a-tag
以下代码正在运行:
$response_tags = $mailchimp->lists->getListMemberTags($list_id, $subscriber_hash);
\Drupal::logger('mailchimp_get_tags')->notice('<pre><code>' . print_r($response_tags, TRUE) . '</code></pre>');
stdClass Object
(
[tags] => Array
(
[0] => stdClass Object
(
[id] => ****
[name] => 1_year
[date_added] => 2020-09-30T14:09:29+00:00
)
)
[total_items] => 1
)
但下面的代码给出了 400 bad request error ...
$mailchimp->lists->updateListMemberTags($list_id, $subscriber_hash, [
"tags" => [
"name" => "my_new_tag",
"status" => "active"
]
]);
错误:
GuzzleHttp\Exception\ClientException:客户端错误:POST https://***.api.mailchimp.com/3.0/lists/***/members/***/tags
导致 400 Bad Request
响应:"type":" http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/ ","title":"Invalid Resource","stat (truncated... ) 在 GuzzleHttp\Exception\RequestException::create() 中(/home/d8/drupal-project/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php 的第 113 行)。
=> https://mailchimp.com/developer/guides/marketing-api-conventions/#error-glossary
list_id 正确,hash 正确,但向 mailchimp 列表中的现有成员添加标签不起作用。
【问题讨论】:
【参考方案1】:文档不是很清楚。 “名称”和“状态”必须是一个数组。 这是有道理的......但它没有很好的记录。
$mailchimp->lists->updateListMemberTags($list_id, $subscriber_hash, [
"tags" => [
["name" => "my_new_tag", "status" => "active"]
]
]);
【讨论】:
示例实际上是错误的。他们真的应该纠正它。以上是关于Mailchimp 使用 php 和 drupal 8 将标签添加到列表中的现有成员的主要内容,如果未能解决你的问题,请参考以下文章
Drupal MailChimp 电子商务恢复被遗弃的购物车
PHP 警告:Mailchimp::call() 缺少参数 2
如何使用 php 将 Mailchimp API 3.0 的“购物车”和“购物车行”添加到自定义商店?