Symfony2 使用Swiftmailer包来发送电子邮件。
从创建定期通讯的角度来看,了解是否有可能为电子邮件发送时间设置计时器是很有趣的。即,今天准备电子邮件并设置计时器以使其明天发送。
我如何在 Symfony2 中做到这一点?
Symfony2 使用Swiftmailer包来发送电子邮件。
从创建定期通讯的角度来看,了解是否有可能为电子邮件发送时间设置计时器是很有趣的。即,今天准备电子邮件并设置计时器以使其明天发送。
我如何在 Symfony2 中做到这一点?
我想到的第一个解决方案是使用publishAt
和isPublished
字段将时事通讯存储在数据库中,并创建一个命令来获取时事通讯NOW() >= publishAt AND isPublished = false
,邮寄它们并将isPublished
标志设置为true
。该命令将由 cron 运行。
首先,没有标准的方式来安排定期电子邮件。
我认为最好的方法是使用MailChimp之类的工具,您可以在其中以编程方式管理和安排邮寄活动。为此有 Symfony2 捆绑包 - MZMailChimpBundle。
如果您不想使用 MailChimp(或类似的),那么Elnur的解决方案非常好。
或者,您可以使用mailing queue,但它是相当高级的主题,对于您的案例来说是额外的工作。