我需要从一个模板页面向1500+订阅者发送个人电子邮件。他们不是WordPress用户,但他们的详细信息存储在一个非WordPress表中。
在发布更新后,我需要从表中获取他们的电子邮件地址,并向他们发送个人电子邮件。该电子邮件包含一个唯一的链接,以取消订阅。
我把一切都搞定了。唯一的一件事是,当帖子被更新,它继续加载和加载,因为它发送电子邮件,并最终超时。
如果有一个更好的解决方案来更新这篇文章,但安排电子邮件或发送50多岁的电子邮件,谁能告诉我吗?
发布于 2017-06-01 07:57:37
正如评论中已经提到的,有一些可能性你可以选择--让WordPress在save_post上发送所有这些电子邮件肯定不是一个好主意。
以下是解决这个问题的三种可能方法:
1)与wp_mail()
不同,您可能希望实现一个PHP库,用于同时快速发送许多电子邮件,例如PHPMailer (https://github.com/PHPMailer/PHPMailer)。
优势:您不需要外部服务,也不需要cronjob。
的缺点:--如果订户数量增加到很高--这也会失败。
2)使用一个内部cronjob作为WP,并发送50块。有许多关于WordPress Cronjobs如何工作的教程(cron)
的优势:不需要外部服务,订户数量几乎不受限制。
Disadvantages: --这需要一段时间才能完成WordPress任务。它将减慢您的网站,特别是如果您有许多更新。
3)使用外部服务,如Mailchimp。只要看看他们的API并触发电子邮件发送。
Advantage:许多其他选项。您不必实现任何发送逻辑。
Disadvantages:最终要花钱。需要集成他们的API。您必须保持订阅者列表同步。
发布于 2017-06-01 15:49:31
有几个WordPress插件可以进行大规模邮寄。例如,给用户的大量电子邮件。我想你已经看过了。我没有用过其中任何一种。
我过去对1.2万名订阅者的电子邮件列表使用的是PHPList。它有一个开放源码免费版本,允许您每月发送300条消息和无限订阅者。它允许您在不向WordPress添加1500个帐户的情况下使用列表中的订阅/取消订阅功能,并管理您的订阅者。
需要注意的问题之一是,许多ISP每个域每小时有500条消息限制。这意味着1500人的名单至少需要四个小时才能发送。为什么是四个小时?如果您发送500每小时,您可能会绊倒一个守护进程,阻止您的网站使用太多的资源。此外,你不能收到任何电子邮件,因为上限是为每封电子邮件。但是如果你把发送率降到400,你就会没事的。即使没有限制,也有可能需要一段时间才能向1500个用户发送一条消息。
我转到了像邮件黑猩猩这样的电子邮件提供商,因为以每小时450封电子邮件的速度,发送电子邮件需要花费26+时间,邮件列表管理人员往往很挑剔。这为您在一台服务器上提供了所有解决方案,这在管理项目时是很好的。
祝好运。
https://stackoverflow.com/questions/44311669
复制