markocupic/be_email

从Contao后端发送电子邮件。Contao开源CMS的后端扩展

安装: 541

依赖项: 0

建议者: 0

安全性: 0

星标: 3

关注者: 2

分支: 0

开放问题: 0

类型:contao-bundle

3.4.1 2022-08-29 20:26 UTC

README

Alt text

Contao后端电子邮件

Contao电子邮件扩展,用于从Contao后端发送消息。在Contao设置中可以定义地址簿从何处获取地址。可以是tl_member、tl_user或两者。

Backend

兼容性

版本3.3仅与Contao >=4.9兼容。

希望您在使用Contao后端电子邮件时享受乐趣!

beEmailBeforeSend钩子

使用beEmailBeforeSend钩子可以在发送之前修改两个对象。为此,需要编写一个Contao钩子类。

为了通过注解注册钩子,需要在services.yml中注册它。

# services.yml
services:
    _defaults:
        autowire: true
        autoconfigure: true
        public: true

    Vendorname\App\:
        resource: ../../
        exclude: ../../{DependencyInjection,Resources,Model,Widget}

钩子类可能看起来像这样。钩子期望三个参数,没有返回值。

<?php

namespace Vendorname\App\Listener\ContaoHooks;

use Contao\CoreBundle\ServiceAnnotation\Hook;

/**
 * @Hook("beEmailBeforeSendHook")
 */
class BeEmailBeforeSendHook
{
    /**
     * !!!Important
     * For manipulating data first and second parameter should be passed by reference!
     * @param $objEmail
     * @param $beEmailModel
     * @param $dc
     */
    public function __invoke(&$objEmail, &$beEmailModel, $dc)
    {
        // f.ex. manipulate sender email address
        $objEmail->from = 'foo@myhost.com';

        // f.ex. manipulate content
        $objEmail->text = 'bla bla!!';
        $objEmail->html = 'bla bla!!';
    }

}