我正在添加AWeber作为web应用程序中的自动应答器。使用AWeber API,我可以添加一个已知名称的新订阅者到列表,在这种情况下,该名称为第一个列表:
$app = new MyApp();
$app->findSubscriber('whtever@aol.com');
$list = $app->findList('firstlist');
$subscriber = array(
'email' => 'someemail@gmail.com',
'name' => 'Name here'
);
$app->addSubscriber($subscriber, $list);
findList()的函数定义为:
function findList($listName) {
try {
$foundLists = $this->account->lists->find(array('name' => $listName));
return $foundLists[0];
}
catch(Exception $exc) {
print $exc;
}
}
由于我正在开发一个公共应用程序,所以我需要为用户提供一个从可用列表中进行选择的选项。请指导我如何检索所有列表名称。
您正在返回$foundLists[0],因此它将返回单个列表。尝试返回foundLists并检查它返回的内容。这可能会帮助您:https://labs.aweber.com/snippets/lists
简而言之,我通过首先查找Aweber用户Id来提取列表,以便在URL https://api.aweber.com/1.0/accounts/<id>/lists
中使用它
为了找到用户ID,我首先得到了帐户。
$this->aweber->getAccount($token['access'], $token['secret']);
然后,我检索用户的信息。
$aweber_user = $this->aweber->loadFromUrl('https://api.aweber.com/1.0/accounts');
从那以后,我用。。。
$id = $aweber_user->data['entries'][0]['id'];
一旦我有了用户ID,我就可以用。。。
$lists = $this->aweber->loadFromUrl('https://api.aweber.com/1.0/accounts/'.$id.'/lists');
这个例子更多的是一种过程性的方法,当然,我建议使用类。