Joomla 3.6.x Development E-Mail erzeugen und senden

Nachfolgend ein paar Codezeilen die ich gerne in Joomla verwende um E-Mails zu versenden. Die dafür benötigte Klassen ist JMail und im Detail unter diesem Link zu finden.

Joomla API 3.x JMail: https://api.joomla.org/cms-3/classes/JMail.html

Joomla API 3.x JFactory::getMailer: https://api.joomla.org/cms-3/classes/JFactory.html#method_getMailer

Die nachfolgenden Zeilen haben folgendes Resultat:

  • Abfrage der in Joomla hinterlegten E-Mailadresse aus der Konfiguration
  • Abfrage des E-Mail Abesendenamens aus der Joomla Konfiguration
  • verwenden eines Subjekts / einer Betreffzeile
  • verwenden eines Mailbodies im Textformat
  • verwenden einer gegebenen E-Mailadresse aus z.B. einem Formular
  • senden der E-Mail als Blind Copy an die hinterlegte E-Mail in Joomla

Joomla JMail erzeugen und senden einer E-Mail

Der Code sieht wie folgt aus, wobei folgende Werte in der Variable übergeben werden:

  • $user_email = E-Mailadresse z.B. max@mustermann.de

Die Kommentare in den Zeilen darunter sind jeweils eine kurze Erklärung zum Code.

Zeile Code
1 $config = JFactory::getConfig();
// laden der Joomla Klasse JFactory und der Methode getConfig zum abrufen der Systemeinstellungen
2 $aSender = array( $config->get( ‚mailfrom‘ ), $config->get( ‚fromname‘ ) );
// speichern der in Joomla hinterlegten E-Mailadresse und des Absendenamens
3 $mailer = JFactory::getMailer();
// laden der Joomla Klasse JFactory und der Methode getMailer zum erstellen der E-Mail
4 $mailer->setFrom($aSender[0], $aSender[1]);
// setzen der Absender Mailadresse und des Absendernamens, aus der Joomla Konfiguration für das E-Mail „von Feld“
5 $mailer->setSender($aSender);
// setzen des Absenders – siehe Zeile4
6 $mailer->addRecipient($user_email);
// den Empfänger mit seiner E-Mailadresse hinzufügen
7 $mailer->setSubject(„Herzlich Willkommen“);
// das Subjekt / die Betreffzeile festlegen
8 $body = „Hallo Besucher,“
.“\n\nund vielen Dank für deinen Besuch auf Taste-of-IT.de.“
. „\nHier steht der weitere Text“
);
// den Mailtext / Mailbody in der Variable $body schreiben
9 $mailer->setBody($body);
// den Mailtext / Mailbody mit dem Inhalt der festlegen
10 $mailer->addReplyTo($aSender[0], $aSender[1]);
// setzen des Feldes „senden An“ / „Reply to“ mit der E-Mailadresse und den Namen aus der Joomla Konfiguration
11 return $mailer->Send();
// senden der E-Mail und Rückgabe des Statuscodes zum Erfolg oder Misserfolg

So kann die Erstellung und der Versand einer Tex-E-Mail aus Joomla aussehen. Have Fun 🙂

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.