【问题标题】:Mass email to subscribers upon WordPress post update在 WordPress 帖子更新上向订阅者发送大量电子邮件
【发布时间】:2017-06-01 15:28:51
【问题描述】:

我需要从 WordPress 模板页面向 1500 多名订阅者 发送单独的电子邮件。他们不是 WordPress 用户,但他们的详细信息存储在非 WordPress 表中。

更新后,我需要从表中获取他们的电子邮件地址并向他们发送单独的电子邮件。该电子邮件包含一个用于取消订阅的唯一链接。

我一切正常。唯一的问题是,当帖子更新时,它会在发送电子邮件时不断加载并最终超时。

谁能告诉我是否有更好的解决方案来更新帖子但安排电子邮件或以 50 秒为单位发送电子邮件?

【问题讨论】:

  • 发送 1,500 封电子邮件需要一些时间,最好通过某种 cron 或后端进程来处理。或者,设置 Mailchimp 列表会更容易。

标签: php wordpress email


【解决方案1】:

正如 cmets 中已经提到的,您可以使用一些可能性 - 让 WordPress 在 save_post 上发送所有这些电子邮件肯定不是一个好主意。

您可以通过以下三种方法来解决它:

1) 您可能希望实现一个 PHP 库,而不是 wp_mail(),以便一次快速发送多个电子邮件,例如 PHPMailer (https://github.com/PHPMailer/PHPMailer)。

优势:您不需要外部服务,也不需要 cronjob。

缺点:如果订阅者数量增长到很高,这也会失败。

2) 为 WP 使用内部 cronjob 并发送 50 个块。有很多教程 WordPress Cronjobs 是如何工作的 (https://codex.wordpress.org/Function_Reference/wp_cron)

优点:无需外部服务,订阅人数几乎没有限制。

缺点: WordPress cronjob 完成需要一些时间。它会降低您的网站速度,尤其是如果您有很多更新。

3) 使用 Mailchimp 等外部服务。只需查看他们的 API 并触发电子邮件发送。

优势:许多附加选项。您不必实现任何发送逻辑。

缺点:最终要花钱。需要集成他们的 API。您必须保持订阅者列表同步。

【讨论】:

  • 优秀的答案。自从我看到你的答案后就放弃了我的答案。
【解决方案2】:

有几个 WordPress 插件可以进行群发邮件。例如,Mass Email To users。我假设你已经看过它们了。我一个都没用过。

我曾经用于 12,000 个订阅者的电子邮件列表是使用 PHPList。它有一个开源免费版本,允许您每月发送 300 条消息和无限订阅者。它允许您在列表中拥有订阅/取消订阅功能并管理您的订阅者,而无需向 WordPress 添加 1500 个帐户。

https://www.phplist.com

需要注意的一个问题是,许多 ISP 的每个域每小时 500 条消息的限制。这意味着 1500 人的列表将至少需要四个小时才能发送。为什么要四个小时?如果您每小时发送 500 个,您可能会因为使用过多资源而阻止您的网站的守护进程。另外,您无法接收任何电子邮件,因为上限适用于每封电子邮件。但是如果你把你的发送速率调低到 400,你应该没问题。即使没有限制,向 1500 个订阅者发送消息也可能需要一段时间。

我转而使用像 Mailchimp 这样的电子邮件提供商,因为每小时 450 封电子邮件,发送一封电子邮件需要 26 多个小时,而且邮件列表管理员往往很挑剔。这可以在一台服务器上为您提供所有解决方案,这在管理项目时非常有用。

祝你好运。

【讨论】:

    猜你喜欢
    • 2016-07-05
    • 2010-11-01
    • 2019-08-04
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多