Ergebnis 1 bis 3 von 3

Thema: [AVISOTA 2] eigene InsertTags? Daten aus einer anderen Tabelle anzeigen?

  1. #1
    Contao-Nutzer
    Registriert seit
    20.04.2011.
    Beiträge
    76

    Frage [AVISOTA 2] eigene InsertTags? Daten aus einer anderen Tabelle anzeigen?

    Hallo!

    Ich möchte gerne Daten per InsertTags in den Newsletter einfügen.
    Es sind Mitglieder als Empfänger ausgewählt.

    Mit ##recipient.firstname## usw. bekomme ich schon Felder von "tl_member" in den Newsletter.
    Ich habe aber noch eine andere Tabelle mit den Mitgliedern verknüpft und möchte diese Daten im Newsletter anzeigen.

    Gibt es dafür einen Hook wie z.B. der hier: "$GLOBALS['TL_HOOKS']['replaceInsertTags']" wo auch der Empfänger mit übergeben wird?

    Ich hoffe es kann mir Jemand helfen.

    Liebe Grüße
    pressi

  2. #2
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Die ## ... ## Tags sind keine Insert Tags im Contao Sinne, es handelt sich dabei um Twig Variablen, ich habe allerdings die Begrenzungszeichen ausgetauscht von {{ .. }} (Twig default, Contao Insert-Tag) zu ## .. ## (Contao Simple Token Syntax) damit es nicht ganz so verwirrend ist.

    Du kannst das "avisota.contao.pre-render-message-template" Event nutzen, um die "additionalData" zu ergänzen.

    PHP-Code:
    // system/modules/xxx/config.php
    $GLOBALS['TL_EVENTS']['avisota.contao.pre-render-message-template'][] = array(
        new 
    MyClass(),
        
    'myCallable'
    );

    // system/modules/xxx/classes/MyClass.php
    use Avisota\Contao\Message\Core\Event\PreRenderMessageTemplateEvent;
    use 
    Avisota\Recipient\MutableRecipient;

    class 
    MyClass {
        public function 
    myCallable(PreRenderMessageTemplateEvent $event) {
            
    /** @var array $additionalData */
            
    $additionalData $event->getAdditionalData();
            
    /** @var MutableRecipient */
            
    $recipient $event->getRecipient();

            
    // Hier kannst du deine zusätzlichen Daten nach $additionalData schreiben
            // oder $recipient ergänzen

            
    $event->setAdditionalData($additionalData);
        }


  3. #3
    Contao-Nutzer
    Registriert seit
    20.04.2011.
    Beiträge
    76

    Daumen hoch Funktioniert!

    Super Vielen Dank!

    habe das ganze jetzt so umgesetzt wie von dir beschrieben und hat wunderbar funktioniert.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •