elliotsawyer / managed-emails
通过 SilverStripe 网站集中管理电子邮件
1.0.0
2019-10-30 00:49 UTC
Requires
Suggests
- symbiote/silverstripe-queuedjobs: Queue emails instead of sending immediately
This package is auto-updated.
Last update: 2024-08-30 01:34:16 UTC
README
你是否需要向用户发送大量电子邮件,每当他们做一些需要他们注意的特定事情时?在 CMS 中集中管理它们,并在代码库中使用查找标签字段引用它们。内容管理您的主题、消息正文、发件人地址以及 CC/BCC/ReplyTo 地址,支持由 DataObject 提供的变量。支持直接发送或如果可用,则支持排队作业发送。
这是一个用于在 CMS 中集中管理电子邮件的 ModelAdmin
- 指定一个发件人地址
- 指定一个主题
- 编写电子邮件正文
- 添加额外的收件人,除了用户提供的收件人外
- 排队发送电子邮件,或配置它立即发送
安装
- 将存储库添加到您的 composer.json 中。这是一个私有仓库,所以 composer 不会在 packagist 上找到它
composer require elliotsawyer/managed-emails
- 运行
vendor/bin/sake dev/build flush=
配置
有两个字段可以配置。
ElliotSawyer\ManagedEmails\ManagedEmail: #default "From" address default_from_address: 'hello@sawyer.nz' #WYSIWYG field defaults to <p></p>, so can never be empty minimum_body_length: 10
用法
在 "电子邮件管理" 管理区域中定义一个新的管理电子邮件
- 设置标签:这是你将在代码中 "查找" 的标识符
- 配置任何其他收件人:收件人、CC、BCC 和 Reply-To 地址
- 设置发件人地址、主题和消息正文
- 你可以在消息正文中引用特定的变量,并将它们从你的代码中传递到消息正文中。
- 如果你安装了排队作业,你的消息将被排队发送。如果没有,它将立即发送
/** * $messageBody = 'Hi {$Member.Email}, this is from {$FromPerson} located at {$Address}.' * **/ $email = ManagedEmail::get()->find('Label', 'EXAMPLE_MESSAGE'); if ($email && $email->ID) { //send a message to an email address, with template variables defined $email->send('someone@example.com', [ 'Member' => Member::get()->first(), 'FromPerson' => 'Elliot Sawyer', 'Address' => '1234 Nowhere Street' ]); }
版权
© 2019 Elliot Sawyer, CryptoPay Limited. 版权所有。
支持
喜欢我的工作?如果你觉得这个模块帮助你解决了问题,请考虑给我买杯咖啡或进行小额捐赠。我接受以下地址的加密货币
- 比特币:12gSxkqVNr9QMLQMMJdWemBaRRNPghmS3p
- 比特币现金:1QETPtssFRM981TGjVg74uUX8kShcA44ni
- 莱特币:LbyhaTESx3uQvwwd9So4sGSpi4tTJLKBdz