Ergebnis 1 bis 8 von 8

Thema: Mail vor dem Versenden ändern mit parseTemplate-Hook

  1. #1
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard Mail vor dem Versenden ändern mit parseTemplate-Hook

    Ich will mit dem parseTemplate-Hook die Mails eines Newsletters vor dem Versenden ändern. Leider funktioniert das mit dem Beispiel nicht:
    PHP-Code:
    public function NewsletterTags(\Template $objTemplate)                             
    {                                                                                  
        
    // Prüfen, ob es ein Mailtemplate ist                                          
        
    if(strpos($objTemplate->getName(), 'mail_') !== 0)                             
            return;                                                                    
                                                                                       
        
    $arr $objTemplate->getData();                                                
                                                                                       
        
    $arr['body'] = str_replace('Lieber''Hallo'$arr['body']);                   
        
    $arr['subject'] = str_replace('Test''Schachbundmoderation'$arr['subject']);
        
    $objTemplate->setData($arr);                                                   
                                                                                       
        
    log_message(print_r($arrtrue), 'test.log');                                  
                                                                                       

    Die Änderungen mit str_replace werden ignoriert.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.112
    Partner-ID
    10107

    Standard

    Mit dem parseTemplate Hook kannst du nur die Daten des Templates vor dem Parsing ändern. Du brauchst wenn dann https://docs.contao.org/dev/referenc...ckendTemplate/ achso, das willst du ja machen. Hast du denn schon geprüft, ob dein Hook überhaupt aufgerufen wird?
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Meine Logatei wird geschrieben.

    UNd in contao/config/config.php:
    PHP-Code:
    $GLOBALS['TL_HOOKS']['parseTemplate'][] = array('Schachbulle\ContaoFernschachBundle\Hooks\Newsletter''NewsletterTags'); 
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.112
    Partner-ID
    10107

    Standard

    Naja, dann debugge mal mehr Daten. Kommt in $arr['body'] überhaupt "Lieber" vor etc.
    » sponsor me via GitHub or PayPal or Revolut

  5. #5
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Jetzt ist eine Mail angekommen, wo body geändert ist. Aber subject ist noch dasselbe.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.112
    Partner-ID
    10107

    Standard

    Das Subject wird ja nicht über das Template gesetzt.
    » sponsor me via GitHub or PayPal or Revolut

  7. #7
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Das Subject wird ja nicht über das Template gesetzt.
    Was wiederum heißt, das man Ersetzungen im Subject nicht vornehmen kann. Dafür gibt es ja keinen Hook. Ein personalisiertes Subject ist also nicht möglich.
    Aber das die Änderungen im Body jetzt wenigstens wirken (eine halbe Stunde nach Code-Änderung und trotz Debugmodus), macht mich schon mal sehr zufrieden.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.112
    Partner-ID
    10107

    Standard

    Zitat Zitat von Samson1964 Beitrag anzeigen
    Ein personalisiertes Subject ist also nicht möglich.
    Das einzige was aktuell möglich wäre ist das MessageEvent zu nutzen: https://symfony.com/doc/5.4/mailer.html#messageevent
    » sponsor me via GitHub or PayPal or Revolut

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
  •