3

APIを使用してMailChimpメーリングリストから購読者数を表示しようとしています.以下のコードが現在、特定の1つのリストではなく、すべてのリストの購読者数を吐き出していることを除いて、部分的に機能しています. $listId ='XXX'; の行でリスト ID を指定しました。しかし、それは機能していないようです。全部で 5 つのリストがあるため、以下の 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);
    }
4

2 に答える 2

2

オンラインドキュメントやラッパーに含まれる例ほど役に立たないため、ラッパーの内部をいじらないことを強くお勧めします。ラッパーを使用すると、追跡した行が適切な呼び出しを行うときに効果的に満たされることを意味します。

とにかく、これはあなたが望むものです:

$filters = array('list_id'=>'XXXX');
$lists = $api->lists($filters);
于 2011-03-18T21:07:30.937 に答える
1

Mailchimp は、http: //apidocs.mailchimp.com/downloads/#php で API の周りにビルド済みの php ラッパーを提供しています。この API には関数 lists() が含まれており、そのドキュメントによれば、とりわけ以下を返します。

int member_count 指定されたリスト内のアクティブなメンバーの数。

これは、上記で言及している機能のようです。返されたリストを反復処理して、適切な ID を持つリストを見つけるだけです。そこから、リストに関する他の多くの統計とともに、購読者数を照会できるはずです。

于 2011-03-10T07:22:23.723 に答える