3

我认为问题就在身边$api->listSubscribers()

include('../libs/mailchimp/MCAPI.class.php');

$options = array('list_id' => '$list_id', 'subject' => 'Prova', 'from_name' => 'name', 'from_email' => 'info@example.com');
$content = array('html' => '<p>Testo di prova</p>');

$api = new MCAPI($apikey);
$campaignId = $api->campaignCreate('trans', $options, $content);

$api->listSubscribe($options['list_id']);

$api->campaignSendNow($campaignId);

if ($api->errorCode){
    echo "Unable to Create New Campaign!";
    echo "\n\tCode=".$api->errorCode;
    echo "\n\tMsg=".$api->errorMessage."\n";
} else {
    echo "New Campaign ID:".$campaignId ."\n";
}

为什么不发邮件?

4

2 回答 2

4

您在这里有几个问题:

第一个是您没有在每次 API 调用后进行错误检查。如果您从底部获取错误检查代码并将其粘贴在 listSubscribe() 调用之后,您将立即收到错误,因为您没有传递任何类型的订阅者数据(至少您需要电子邮件地址)。listSubscribe 的文档在这里

一旦你这样做了 - 除非你已经彻底阅读并考虑了 listSubscribe 文档中的选项 - 你的第二个问题将是你正在运行 listSubscribe 并将 double_optin 参数设置为 true (默认值),这意味着它们不会订阅,直到单击确认电子邮件中的链接。

接下来,该代码只会给您带来麻烦,而且可能很快。如果您要使用伪跨类营销活动,那么您必须只为每种类型的电子邮件创建一个伪跨类营销活动,然后一遍又一遍地发送该营销活动。这就是它们的工作方式。不这样做会导致你用一大堆垃圾广告系列填满你的帐户,此时使用伪跨广告系列是没有意义的,因为这与创建/发送常规广告系列给单个用户相同超过。

于 2011-03-18T21:17:21.833 回答
1

你有任何错误吗?

看来您不包括 api 密钥,它应该如下所示:

$api = new MCAPI($apikey);

代替:

$api = new MCAPI('apikey');

您从 api 仪表板获取 API 密钥:http: //admin.mailchimp.com/account/api

于 2011-03-12T20:42:49.933 回答