elliotsawyer/managed-emails

通过 SilverStripe 网站集中管理电子邮件

安装: 452

依赖: 0

建议: 0

安全: 0

星星: 0

关注者: 1

分支: 0

开放问题: 0

类型:silverstripe-vendormodule

1.0.0 2019-10-30 00:49 UTC

This package is auto-updated.

Last update: 2024-08-30 01:34:16 UTC


README

你是否需要向用户发送大量电子邮件,每当他们做一些需要他们注意的特定事情时?在 CMS 中集中管理它们,并在代码库中使用查找标签字段引用它们。内容管理您的主题、消息正文、发件人地址以及 CC/BCC/ReplyTo 地址,支持由 DataObject 提供的变量。支持直接发送或如果可用,则支持排队作业发送。

这是一个用于在 CMS 中集中管理电子邮件的 ModelAdmin

  • 指定一个发件人地址
  • 指定一个主题
  • 编写电子邮件正文
  • 添加额外的收件人,除了用户提供的收件人外
  • 排队发送电子邮件,或配置它立即发送

安装

  1. 将存储库添加到您的 composer.json 中。这是一个私有仓库,所以 composer 不会在 packagist 上找到它
  2. composer require elliotsawyer/managed-emails
  3. 运行 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

用法

在 "电子邮件管理" 管理区域中定义一个新的管理电子邮件

  1. 设置标签:这是你将在代码中 "查找" 的标识符
  2. 配置任何其他收件人:收件人、CC、BCC 和 Reply-To 地址
  3. 设置发件人地址、主题和消息正文
  4. 你可以在消息正文中引用特定的变量,并将它们从你的代码中传递到消息正文中。
  5. 如果你安装了排队作业,你的消息将被排队发送。如果没有,它将立即发送
        /**
         * $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