nswdpc / silverstripe-structured-email

为 Silverstripe 设计的结构化邮件

安装: 68

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 1

类型:silverstripe-vendormodule

v0.2.1 2024-04-16 23:29 UTC

This package is auto-updated.

Last update: 2024-09-15 03:34:31 UTC


README

此模块的目标是生成简单、易于理解的邮件(更多)。所使用的模板基于Postmark 事务性电子邮件模板

StructuredEmail 类扩展了 Email 类。您可以单独使用它,或者您可能希望使用 Injector 将 StructuredEmail 注入为项目中使用的 Email 类。

对于特定的核心邮件,它将尝试根据模板名称检测邮件的目的

  • SilverStripe/Control/Email/ForgotPasswordEmail - 忘记密码邮件
  • SilverStripe/Control/Email/ChangePasswordEmail - 修改密码邮件

待办事项

  • SilverStripe/MFA/Email/* - 多因素认证邮件
  • SilverStripe/ContentReview/* - 内容审查邮件
  • SubmittedFormEmail - 用户定义表单通用邮件
  • SubmittedFormEmailPlain - 用户定义表单通用邮件(纯文本)

现有模板

如果类在邮件中发现完整的 HTML 文档,它将使用该文档的 <body> 标签中的内容作为电子邮件内容。

Schema.org

参考

资源

快速示例

为了更精细的控制,请直接使用 StructuredEmail

请参阅进一步文档

<?php
// Your custom HTML body
$html = ArrayData::create([
    'Name' => $name,
    'CallToAction' => $link
])->renderWith('My/Template');

$data = [
    'Body' => $html// Your email HTML
];

$email = StructuredEmail::create();
$email->setTo(["to@example.com", "To name"]);
$email->setFrom(["from@example.com" => "From name"]);
$email->setData($data);
// will automatically pick up StructuredEmail.ss as the template
$email->send();

电子邮件使用来自 NSW 设计系统的标准、基本的调色板进行装饰。您可以提供自己的装饰器

安装

安装此模块的唯一支持方式是通过 composer

composer require nswdpc/silverstripe-structured-email

许可证

BSD-3-Clause

维护者

HTML 电子邮件模板的来源是Postmark 模板项目

错误追踪

我们欢迎在 Github 问题跟踪器上对这个项目的错误报告、pull 请求和功能请求。

在打开新问题之前,请先审查行为准则

安全

如果您发现此模块存在安全漏洞,请首先通过电子邮件digital[@]dpc.nsw.gov.au详细说明您的发现。

开发和贡献

如果您想为此模块做出贡献,请确保提出一个 pull 请求并与模块维护者讨论。

在完成 pull 请求之前,请先审查行为准则