share

Powermail-E-Mailempfänger mit Case-Unterscheidung über TypoScript zuweisen

Die Extension „Powermail“ für TYPO3 ist das universelle Tool, um E-Mails aus dem Frontend zu verschicken, Daten in die Datenbank zu schreiben und so weiter.

Die Konfiguration ist recht einfach, sofern man einmal die Denkweise verstanden hat.

An dieser Stelle eine kleiner Tipp, wie man recht schnell den Empfänger einer E-Mail über das Frontend definieren kann, ohne die E-Mailadresse dort im Klartext zu hinterlegen:

1. Formularfeld anlegen

Wir erstellen mit Powermail ein Feld zum unterschieden der Empfänger (Radiobuttons, Selectbox,…) mit den Werten „empf1“ und „empf2“. Nehmen wir an, das Feld hat den Marker (steht im Feld „Name für Templates“) „###UID19###“.

Ja nach Auswahl sollen die Daten jetzt an [email protected] oder [email protected] gesendet werden.

2. TypoScript im Setupfeld des Templates

Im TypoScript-Setup für die Seite defnieren wir jetzt ein Case-Objekt mit dem Namen „emailan“ und unterschieden dort einen Standardwert („default“) und den Wert „empf2“ mit der zugehörigen E-Mailadresse. Unterschieden werden sollen die Werte anhand des Feldes mit der uid 19. Der Wert „powermail_249“ definiert die ID des Content-Elements des Powermailformulars.

emailan = CASE
emailan {
    ### Unterschiedung anhand Feld mit der UID 19
    key.data = TSFE:fe_user|sesData|powermail_249|uid19
    ### Standardwert
    default = TEXT
    default.value = [email protected]
    ### Wert bei Auswahl "empf2"
    empf2 = TEXT
    empf2.value = [email protected]
}

Jetzt vererben wir nur noch den Wert an einen weiteren Marker, den wir dann in Powermail als Empfänger auslesen können:

plugin.tx_powermail_pi1.dynamicTyposcript {
    empfaenger < emailan }

3. Empfänger in Powermail auslesen

Damit ergibt sich für das Empfängerfeld in unserem Powermail-Formular der Wert "###POWERMAIL_TYPOSCRIPT_EMPFAENGER###".

Joscha Krug ist Gründer und Geschäftsführer der marmalade GmbH aus Magdeburg. Mit seinem stetig wachsenden Team realisiert er schon seit 2009 E-Commerce Projekte mit OXID eShop und Shopware. Er ist Autor der beiden OXID Bücher, erschienen bei o'Reilly.

6 Kommentare zu:

Powermail-E-Mailempfänger mit Case-Unterscheidung über TypoScript zuweisen

  • michael

    Vielen Dank für das interessante Posting, es hat mir heute in einem Projekt viel Arbeit erspart und mich schnell ans Ziel gebracht!

  • Joscha Krug

    Hallo Michael,

    sehr gerne! Dazu schreiben wir das: Um anderen die ein oder andere Stunde testen zu ersparen. 😉

    Happy coding!

    Gruß Joscha

  • Anja

    Hallo Joscha
    Bin bei der Suche meines Problems auf dein Post gestossen. Leider müsste ich eine abgewandelte Version haben, da die zwei weiteren Empfänger im Voraus nicht bekannt sind.
    Ich müsste das Formular an zwei Mailadressen senden, welcher der User erst im Formular einträgt. Hast du zufällig eine Idee, wie das gehen könnte?
    Gruss Anja

  • Joscha Krug Artikelautor

    Hallo Anja,

    wenn du die Empfänger im Formular angeben lassen willst kannst du das ja direkt zuweisen in Powermail. Du solltest dir nur im klaren darüber sein, dass dein Formular so zur Spam-Schleuder werden kann.

    Viele Grüße

    Joscha

  • Kurt

    Hallo Joscha,
    wie alle bin ich natürlich auch über die Sucher auf Deinen Thread gestoßen.
    Nun zwei Fragen meinerseits:
    1) ist Deine Lösung auch in der Version 7.x noch zu zutreffend?
    2) kann ich das auch so für die Anredeunterscheidung (Herr/Frau) verwenden.

    Danke und Viele Grüße,
    Kurt

  • Joscha Krug Artikelautor

    Hallo Kurt,
    ich bin leider nicht so ganz aktuell informiert, da ich in letzter Zeit weniger mit TYPO3 zu tun hatte. Powermail ist ziemlich überarbeitet worden und die nativen Formular-Funktionen erlauben heute weit mehr. Ich bin also vorsichtig skeptisch, dass das nach 6 Jahren 1:1 noch so funktioniert – freue mich aber über ein Feedback von dir, wenn du es probiert hast.

  • Kommentare geschlossen.