我正在通过取消订阅链接向站点中的所有注册用户发送通知邮件。目前我正在遍历数据库中的所有用户并向每个用户发送邮件。对于取消订阅链接,我添加了用户电子邮件,以便在每个用户单击链接时区分它们。电子邮件中除取消订阅链接外的所有内容均相同。
有没有办法一次向所有用户发送邮件而不循环并为每个用户获取不同的取消订阅链接,这样我可以在每个用户单击链接时区分他们
我正在通过取消订阅链接向站点中的所有注册用户发送通知邮件。目前我正在遍历数据库中的所有用户并向每个用户发送邮件。对于取消订阅链接,我添加了用户电子邮件,以便在每个用户单击链接时区分它们。电子邮件中除取消订阅链接外的所有内容均相同。
有没有办法一次向所有用户发送邮件而不循环并为每个用户获取不同的取消订阅链接,这样我可以在每个用户单击链接时区分他们
简单地说:没有
两封电子邮件可以相同也可以不同 - 如果它们有不同的链接,它们就不是。没有一种机制可以一次性向不同的用户发送不同的电子邮件。
如果您使用一些电子邮件递送服务,例如 SendGrid 或 PostageApp,它们会提供这种功能。在 SendGrid 上,他们有 X-SMTPAPI 标头,支持 Substitutions -JSON 文本字符串(http://sendgrid.com/docs/API_Reference/SMTP_API),其中每个 Substitution(自定义/动态文本)值对应于一个JSON 字符串的“收件人”部分中的电子邮件。
有了这个,您可以将电子邮件连同收件人列表和您的自定义字段(例如名称或取消订阅链接)一起发布到递送服务,递送服务将负责合并电子邮件并将其发送给所有收件人。
这种方法使用得越多,就会节省大量带宽和处理时间。如果您不发送很多电子邮件,这些电子邮件递送服务会提供有限的免费帐户。