Versenden Sie via terminal42/notification_center Benachrichtigungen, wenn sich Besucher auf Ihrer Seite für einen Newsletter anmelden. Die Benachrichtigungen werden versendet, sobald der Besucher seine Newsletter-Anmeldung per E-Mail-Link bestätigt.
composer require markocupic/newsletter-notify-on-subscription-activation-bundle
Erstellen Sie im Backend-Modul "Benachrichtigungen" eine Benachrichtigung des Typs "Newsletter-Benachrichtigungen -> Newsletter Anmeldung Aktivierung"
Als token stehen ##recipient*## und ##newsletter*## zur Verfügung.
Mit ##recipientemail## lässt sich im NC die E-Mail-Adresse des neuen Abonnenten ausgeben. Weitere Felder können über ##recipient*## ausgegeben werden.
Mit ##newslettertitle## lässt sich im NC der Titel des Newsletter-Channels ausgeben. Weitere Felder können über ##newsletter*## ausgegeben werden.
Im Modul Newsletter müssen Sie nun lediglich noch die Benachrichtigung aktivieren.
Eine Beispielklasse für die Benutzung des Hooks findet sich hier hier: Damit lassen sich beispielsweise die Tokens weiter an eigene Bedürfnisse anpassen.
<?php
/**
* Send notifications on newsletter subscription activation
* extension for Contao Open Source CMS
*
* @copyright Copyright (c) 2019, markocupic
* @author markocupic <m.cupic@gmx.ch>
* @link https://github.com/markocupic/newsletter-notify-on-subscription-activation-bundle
* @license MIT
*/
namespace Markocupic;
/**
* Class BeforeNotifyOnSubscriptionActivation
* @package Markocupic
*/
class BeforeNotifyOnSubscriptionActivation
{
/**
* Pass $arrTokens by reference!!!
* @param $arrTokens
* @param $objSubscriber
* @param $objChannel
* @param $objNotification
* @return bool
*/
public function beforeNotifyOnSubscriptionActivation(&$arrTokens, $objSubscriber, $objChannel, $objNotification)
{
$arrTokens['recipient_email'] = 'hans_muster@foofoo.bar';
$arrTokens['newsletter_title'] = 'My incredible newsletter';
// Return true, if notification should be sent
return true;
}
}
Den Hook wie immer contaotypisch in der config.php des eigenen Moduls registrieren.
// config.php
$GLOBALS['TL_HOOKS']['beforeNotifyOnSubscriptionActivation'][] = array('Markocupic\BeforeNotifyOnSubscriptionActivation','beforeNotifyOnSubscriptionActivation');