silverstripe/newsletter

此包已被废弃且不再维护。未建议替代包。
关于此包最新版本(1.0.0)没有可用的许可信息。

新闻邮件模块允许后台CMS用户向不同的邮件列表发送新闻邮件

安装: 11,083

依赖项: 6

建议者: 0

安全性: 0

星标: 69

关注者: 21

分支: 59

开放问题: 22

类型:silverstripe-vendormodule

1.0.0 2017-07-20 09:44 UTC

This package is auto-updated.

Last update: 2024-07-10 21:54:42 UTC


README

SilverStripe 新闻邮件模块

Build Status

安装

此模块需要 silverstripe/cmssymbiote/silverstripe-queuedjobs,并且与 SilverStripe 4 兼容。

composer require silverstripe/newsletter "2.x-dev"

简介

概述

该模块通过 CMS 管理新闻邮件的创建和发送,与编辑页面非常相似。

功能

  • 所见即所得的新闻邮件创建(包括图片和预览)
  • HTML 邮件(自动转换为文本)
  • 订阅页面(采用您自己的主题样式)
  • 通过电子邮件进行订阅确认
  • 通过 URL 和网络确认取消订阅
  • 队列发送邮件(需要 "messagequeue" 模块
  • 批量发送和节流
  • 为电子邮件定制的 SilverStripe 模板
  • 链接跟踪
  • 收件人黑名单
  • 弹跳跟踪(实验性)
  • 可装饰的 Recipient 类以添加更多属性

配置

电子邮件模板

新闻邮件模板是标准的 SilverStripe 模板,包含一些额外的占位符。

  • UnsubscribeLink:取消订阅新闻邮件的个人化链接
  • AbsoluteBaseURL:网站的绝对 URL
  • To:收件人电子邮件地址
  • From:发件人电子邮件地址
  • Subject:新闻邮件主题
  • Recipient.Title:收件人全名,包括称呼、名、中间名、姓(全部为可选)
  • Recipient.Salutation
  • Recipient.FirstName
  • Recipient.Surname
  • Recipient.Email
  • Now:当前日期和时间(格式示例:使用 $Now.Nice)

模板在 mysite/templates/Email 中创建。例如,如果您在 mysite/templates/email 中创建了 Newsletter.ss,则插件将识别此新文件并允许您在下拉菜单中选择它。您可以在 templates/Emails/SimpleNewsletterTemplate.ss 中找到一个具有最小样式的默认模板。

可以使用 配置 API 配置模板路径

*mysite/_config/newsletter.yml*
:::yaml
SilverStripe\Newsletter\Control\NewsletterAdmin
    template_paths: 
        - "themes/mytemplate/templates/email";

用法

邮件列表和收件人

邮件列表(类 MailingList)可以包含许多收件人(类 Recipient)。两者都可以通过“新闻邮件”管理界面创建。每个新闻邮件可以发送到一个或多个邮件列表。一旦开始新闻邮件发送过程,当前邮件列表的收件人将被复制到 SendRecipientQueue,固定此新闻邮件的邮件列表状态。

队列

生成电子邮件是处理密集型的,至少在可能数千个收件人的规模上。在发生致命错误的情况下,我们需要一种安全的方式跟踪已发送的消息。此外,在短时间内发送大量电子邮件可能会使您被列入黑名单。这就是为什么新闻邮件使用队列发送电子邮件的原因。

每个新闻邮件的单独电子邮件都作为 SendRecipientQueue 记录排队。此队列由配置批次的队列作业 NewsletterMailerJob 处理。有关排队过程的更多信息,请参阅 symbiote/silverstripe-queuedjobs 模块。

处理弹跳

该模块允许跟踪每个收件人的电子邮件“弹跳”,对于某些原因无法投递的电子邮件。

保持你的邮件列表中没有永久拒绝投递的收件人,这有助于降低其他方将你的外发邮件归类为垃圾邮件的可能性。

Recipient 模型具有 BouncedCountBlacklisted 属性来跟踪这些信息。默认情况下,这需要通过通过新闻简报管理界面配置的“回复至”地址的收件人手动处理。应该定期扫描这个邮箱中的退回邮件,并在管理界面中为该收件人勾选“已列入黑名单”复选框来将原始收件人列入黑名单。

注意:此过程可以通过将退回邮件转发到 "emailbouncehandler" 模块 来自动化。目前,此过程是实验性的,需要一些组装。

贡献

翻译

自然语言字符串的翻译通过第三方翻译界面 transifex.com 管理。新添加的字符串将定期上传到那里进行翻译,任何新的翻译都将合并回项目源代码。

请使用 https://www.transifex.com/projects/p/silverstripe-newsletter/ 来贡献翻译,而不是发送包含 YAML 文件的拉取请求。

有关详细信息,请参阅 doc.silverstripe.org 上的 "i18n" 主题