首页 文章

如何让Mandrill将收件人的电子邮件放入取消订阅URL

提问于
浏览
0

首先,我知道Mandrill有自己的方式来处理取消订阅,这是"Adding a link with the unsubscribe merge tag" . 但是它会将未订阅的用户存储在帐户中,并且如果向该收件人发送简报和通知,则会生成 rejection .

所以我有这个代码部分,它与foreach循环分别发送给每个收件人并分别发送每封邮件:

foreach($subscribers as $subscribersRow){
   $to =  $subscribersRow['usr_email'];
   $message .= '

<a href="'.site_url('unsubscribe').'/?email='.urlencode($to).'">Click here to unsubscribe.</a>';

但是,Mandrill在发送类似于转发的电子邮件方面有一个优势:使用一行代码来收件人:

'to' => array(array('email' => 'joe@example.com' ),array('email' => 'joe2@example.com' ))

我想利用Mandrill的这个优势(2000封电子邮件/天),删除foreach并在$中放置 Madrill server put the recipient's email . 这样,这部分代码将获得默认值,而不是唯一的,我将能够使用第二个代码片段 . 这样它就赢得了所有的麻烦,并且我会在我的数据库中将其标记为取消订阅 . 我使用Codeigniter API进行发送 . 你知道我怎么能帮助Mandrill帮我解决这个问题 . 提前致谢

1 回答

  • 1

    使用webhook检测取消订阅并让您的webhook代码将其标记为在数据库中取消订阅以防止重新发送 .

    因此,您只需正常使用Mandrill发送,并让Mandrill添加自己的取消订阅链接 .

    接下来,您将设置一个webhook,用于侦听来自用户的取消订阅事件 .

    当webhook被触发时,它将调用您的webhook代码,您的代码将标记用户在数据库中取消订阅 .

相关问题