yiimaker / yii2-email-templates

用于创建和管理电子邮件模板的扩展,可通过网站仪表板进行管理

安装数: 15,165

依赖: 1

建议者: 0

安全: 0

星标: 91

关注者: 16

分支: 19

开放性问题: 6

类型:yii2-extension

v4.1.1 2019-08-10 10:56 UTC

README

Stand With Ukraine

电子邮件模板模块


通过网站仪表板创建和管理电子邮件模板的扩展。您可以使用后端CRUD模块或Gii生成器创建电子邮件模板。

文档位于docs/guide/README.md

Build Status Scrutinizer Code Quality Total Downloads Latest Stable Version StandWithUkraine

安装

通过 composer 安装此扩展是首选方式。

运行

$ composer require yiimaker/yii2-email-templates

或在您的 composer.jsonrequire 部分添加

"yiimaker/yii2-email-templates": "~4.1"

to the require section of your composer.json.

用法

  1. 使用网站仪表板或Gii生成器创建带有占位符的模板

    register-notification - 这是此模板在代码中使用的唯一键

    主题

    来自 {site-name} 的通知

    在此示例中,电子邮件主题包含一个占位符 {site-name}

    正文

    你好,{username}!欢迎来到 {site-name} :)

    电子邮件正文包含两个占位符: {username}{site-name}

    所有键都应该用 {} 包装。

  2. 现在您可以在代码中获取此模板

    $template = Yii::$app->get('templateManager')->getTemplate('register-notification');

    此方法返回一个模板模型对象。

  3. 然后您应该解析此模板

    $template->parseSubject([
       'site-name' => Yii::$app->name,
    ]);
    
    $template->parseBody([
       'username' => Yii::$app->getIdentity()->username,
       'site-name' => Yii::$app->name,
    ]);

    或使用另一个方法

    $template->parse([
       'subject' => [
           'site-name' => Yii::$app->name,
       ],
       'body' => [
           'username' => Yii::$app->getIdentity()->username,
           'site-name' => Yii::$app->name,
       ],
    ]);

    这些方法将模板中的占位符替换为实际数据。

  4. 现在您可以在逻辑中使用此模板的数据

    Yii::$app->get('mailer')->compose()
        ->setSubject($template->subject)
        ->setHtmlBody($template->body)
        // ...

测试

您可以使用composer命令运行测试

$ composer test

或使用以下命令

$ codecept build && codecept run

贡献

有关贡献的信息,请阅读CONTRIBUTING.md

赞助

Buy Me A Coffee

许可

License

本项目根据BSD-3-Clause 许可协议发布。

版权(c)2017-2022,Yii Maker