Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使Mandrill放置收件人';s在取消订阅URL中的电子邮件_Php_Codeigniter_Email_Mandrill_Unsubscribe - Fatal编程技术网

Php 如何使Mandrill放置收件人';s在取消订阅URL中的电子邮件

Php 如何使Mandrill放置收件人';s在取消订阅URL中的电子邮件,php,codeigniter,email,mandrill,unsubscribe,Php,Codeigniter,Email,Mandrill,Unsubscribe,首先,我知道Mandrill有自己的处理退订的方法,也就是说。但它将未订阅的用户存储在该帐户上,如果向该收件人发送新闻稿和公告,则会做出拒绝 因此,我有一个代码部分,它通过foreach循环分别发送给每个收件人,并分别发送每个邮件: foreach($subscribers as $subscribersRow){ $to = $subscribersRow['usr_email']; $message .= '<br/><br/><a href="'

首先,我知道Mandrill有自己的处理退订的方法,也就是说。但它将未订阅的用户存储在该帐户上,如果向该收件人发送新闻稿和公告,则会做出拒绝

因此,我有一个代码部分,它通过foreach循环分别发送给每个收件人,并分别发送每个邮件:

foreach($subscribers as $subscribersRow){
   $to =  $subscribersRow['usr_email'];
   $message .= '<br/><br/><a href="'.site_url('unsubscribe').'/?email='.urlencode($to).'">Click here to unsubscribe.</a>';
我想利用Mandrill的这一优势(每天2000封电子邮件),删除foreach并使Madrill服务器将收件人的电子邮件放在$to位置。这样,这部分代码将获得默认值,而不是唯一值,我将能够使用第二个代码段。这样它就不会拒绝发送给unsubscribed的电子邮件(根本不用麻烦发送),我会在数据库中将其标记为unsubscribed。 我过去常发邮件。你知道我怎样才能帮助曼德里尔帮我做这件事吗。 提前感谢

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

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

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


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

如果我使用自己的取消订阅链接,Mandrill是否也会触发取消订阅web hook?
'to' => array(array('email' => 'joe@example.com' ),array('email' => 'joe2@example.com' ))