如何使用Mailchimp API PHP客户端库设置计数



我已经在我的web应用程序上安装了Mailchimp PHP客户端库,并希望生成我使用过的所有标签的列表。股票代码可以工作,但似乎仅限于10个回复。如果我使用curl代替库函数,我可以设置count参数并获得所有25个标记。库函数似乎不接受输入中的计数。如何使用库返回超过10个标签?

我的工作,虽然有限,库代码是:
require_once $_SERVER['DOCUMENT_ROOT'] .  '/includes/mailchimp/vendor/autoload.php';
$client = new MailchimpMarketingApiClient();
$client->setConfig([
'apiKey' => $MC_apiKey,
'server' => 'us17'
]);
$response = $client->lists->tagSearch($MC_listID);
var_dump($response);

我可以得到所有25个标签,如果我使用curl url,如:

$MC_url = 'https://' . $MC_dataCenter . '.api.mailchimp.com/3.0/lists/' . $MC_listID . '/tag-search?count=50';

提前感谢!

由于标签在Mailchimp中实际上是分段(但是是静态类型),因此您可以使用ListSegments方法。

函数声明为:

public function listSegments($list_id, $fields = null, $exclude_fields = null, $count = '10', $offset = '0', $type = null, $since_created_at = null, $before_created_at = null, $include_cleaned = null, $include_transactional = null, $include_unsubscribed = null, $since_updated_at = null, $before_updated_at = null)

因此,要获得所有标签或静态段的数量,您可以从调用

开始:
$response = $client->lists->listSegments($MC_listID, "total_items", null, null, null, "static");

读取total_items值后,您可以自己进行分页(如果需要=如果有超过1000项)。由于count参数最大限制为1000,因此您需要自己遍历列表,计数为1000,偏移量为0,1000等(取决于您需要读取多少)。比如:

$response = $client->lists->listSegments($MC_listID, "segments.id,segments.name,segments.type", null, 1000, 0, "static");
$response = $client->lists->listSegments($MC_listID, "segments.id,segments.name,segments.type", null, 1000, 1000, "static");
$response = $client->lists->listSegments($MC_listID, "segments.id,segments.name,segments.type", null, 1000, 2000, "static");
...

相关内容

  • 没有找到相关文章

最新更新