33 geniale Contao-Erweiterungen, die du kennen solltest! - Contao Academy
Ergebnis 1 bis 6 von 6

Thema: Newsletter und der nicht funktionierende Kündigen-Link

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

    Standard Newsletter und der nicht funktionierende Kündigen-Link

    In diesem alten Thema ist zu lesen, wie man einen Kündigen-Link im Newsletter unterbringt. Nur leider funktioniert das nur, wenn man den SimpleToken ##email## direkt in den Content (Text/HTML) des Newsletters schreibt. Im Template funktionieren SimpleTokens (und auch InsertTags) nicht. Leider ist mein Newsletter so aufgebaut, das im Template das ganze Drumherum (Kopf, Fuß mit Impressum und Kündigen-Link usw) schon drin ist und der Content wirklich nur den eigentlichen Inhalt liefert.
    Die Philosophie im Newsletter-Modul scheint aber eine andere: Im Template steht nur
    HTML-Code:
    <html>
    <head>
    ...
    </head>
    <body>
    <?= $this->body ?>
    </body>
    </html>
    Mein Template ist da wesentlich umfangreicher. Heruntergebrochenes Beispiel:
    HTML-Code:
    <html>
    <head>
    ...
    </head>
    <body>
    <table>
    <tr><td>Kopf</td></tr>
    <tr><td><?= $this->body ?></td></tr>
    <tr><td>Impressum, 1996 - {{date::Y}}, <a href="{{env::url}}/abmelden.html?email=##email##">Kündigen-Link</a></td></tr>
    </table>
    </body>
    </html>
    Schaut man in die Newsletter.php fällt schnell auf, das das Template selbst nicht geparst wird. SimpleTokens (im Beispiel: ##email##) und Inserttags (im Beispiel: date) werden nicht ersetzt. Im Content, der durch $this->body in das Template eingetragen wird, werden dafür alle Tokens und Tags ersetzt.

    Gibt es eine einfache Lösung? Oder muß ich den Newsletter noch durch den sendNewsletter-Hook jagen, um die Tokens/Tags zu ersetzen?
    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
    Contao-Fan Avatar von bjarke
    Registriert seit
    07.06.2011.
    Beiträge
    253
    Partner-ID
    5067

    Standard

    im mail_default.html5

    PHP-Code:
    {{env::url}}/abmelden.html?email=<?= $this->recipient ?>

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

    Standard

    Das PHP funktioniert, danke!
    PHP-Code:
    <?= $this->recipient ?>
    kannte ich noch nicht.

    HTML-Code:
    {{env::url}}
    wird, wie schon erwähnt, nicht ersetzt.
    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
    Contao-Fan Avatar von bjarke
    Registriert seit
    07.06.2011.
    Beiträge
    253
    Partner-ID
    5067

    Standard

    hatte ich überlesen.

    PHP-Code:
    <?= $this->replaceInsertTags'{{env::url}}' ); ?>

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

    Standard

    Zitat Zitat von bjarke Beitrag anzeigen
    hatte ich überlesen.

    PHP-Code:
    <?= $this->replaceInsertTags'{{env::url}}' ); ?>
    Darauf hätte ich eigentlich auch kommen können ...
    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
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    4.268

    Standard

    Hab das gerade mal wie oben beschrieben gemacht allerdings wird das @ Zeichn in der URL encoded und somit nicht automatisch in das Feld geschrieben.

    PHP-Code:
    <?= $this->replaceInsertTags'{{env::url}}' ); ?>/newsletter/abmelden.html?email=<?= $this->recipient ?>
    Kann ich das umgehen?

    VG Frank

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
  •