我正在尝试使用他们的API在MailChimp邮件列表中显示订阅者数量,我已经部分工作了,除了下面的代码当前正在吐出所有列表的订阅者数量,而不是一个特定的名单。我在 $ listId ='XXX'; 行中指定了列表ID,但这似乎不起作用。因为我总共有五个列表,所以下面的PHP输出显示:
10 0 0 1 9
在下面的代码中,我需要做什么才能从特定列表ID中获取订阅者数量?
<?php
/**
This Example shows how to pull the Members of a List using the MCAPI.php
class and do some basic error checking.
**/
require_once 'inc/MCAPI.class.php';
$apikey = 'XXX';
$listId = 'XXX';
$api = new MCAPI($apikey);
$retval = $api->lists();
if ($api->errorCode){
echo "Unable to load lists()!";
echo "\n\tCode=".$api->errorCode;
echo "\n\tMsg=".$api->errorMessage."\n";
} else {
foreach ($retval['data'] as $list){
echo "\t ".$list['stats']['member_count'];
}
}
?>
我刚刚遇到这个函数(见下文),让我使用已知的list_id返回一个列表。问题是,我不确定如何在函数中添加list_id。
我假设我需要在这一行中定义它? $ params [“filters”] = $ filters;
MailChimp lists()方法文档可在此处引用:http://apidocs.mailchimp.com/rtfm/lists.func.php
function lists($filters=array (
), $start=0, $limit=25) {
$params = array();
$params["filters"] = $filters;
$params["start"] = $start;
$params["limit"] = $limit;
return $this->callServer("lists", $params);
}
答案 0 :(得分:2)
我强烈建议不要使用包装器的内部,因为它不会像在线文档和包装器中包含的示例那样有用。使用包装器意味着在进行适当的呼叫时,您有效搜索的线路将被有效填充。
Anywho,这就是你想要的:
$filters = array('list_id'=>'XXXX');
$lists = $api->lists($filters);
答案 1 :(得分:1)
Mailchimp在http://apidocs.mailchimp.com/downloads/#php的api周围提供了一个预先构建的php包装器。这个api包含一个函数列表(),根据其文档,它返回其他内容:
int member_count给定列表中的活动成员数。
看起来这是您在上面提到的功能。您所要做的就是遍历返回的列表以找到具有正确ID的列表。从那里,您应该能够查询订户数以及有关该列表的许多其他统计信息。