E-Mail Versand
QUIQQER bringt schon ein E-Mail-Queue System mit, der Versand von E-Mails ist daher schnell umgesetzt. Über das E-Mail System werden E-Mail Templates und der E-Mail Versand geregelt.
Einfacher E-Mail Versand
QUI::getMailManager()->send(
'empfänger@mail.com',
'E-Mail Betreff',
'<p>HTML Inhalt</p>'
);
Die Empfänger Adressen können kommasepariert übergeben werden. Dadurch ist es möglich die gleiche E-Mail an verschiedenen Empfänger zu senden.
Erweiterter E-Mail Versand
Das QUIQQER E-Mail System lässt auch Anhänge und spezifischere Angaben für die E-Mail zu. Es können zum Beispiel BCC oder CC Empfänger festgelegt werden.
$Mailer = QUI::getMailManager()->getMailer();
$Mailer->setSubject($subject);
$Mailer->setBody($body);
$Mailer->addRecipient('empfänger@mail.com');
$Mailer->addCC('empfänger@mail.com');
$Mailer->addBCC('empfänger@mail.com');
$Mailer->addAttachment($pathToFile);
// sendet die E-Mail an die E-Mail Queue
$Mailer->send();
E-Mail Templates
Das E-Mail System besitzt ein eigenes Template Engine Objekt. Darüber lassen sich globale HTML Templates für HTML E-Mails festlegen, somit wird für jede E-Mail das gleiche Grundgerüst verwendet.
Detaillierte Beschreibung der E-Mail-Layouts mit Beispielen befindet sich hier: Email-Layouts.
E-Mail Template für ein Projekt setzen
Es existieren zwei E-Mail Templates: header.html
, footer.html
.
Die header.html
legt den Kopfteil der HTML-E-Mail fest. Hier werden oftmals Designangaben gemacht.
Die footer.html
legt den Abschluss der HTML-E-Mail fest. Durch beide Dateien kann somit ein HTML Gerüst um den eigentlich Inhalt der E-Mail gestaltet werden.
Hinweis: Diese beiden Dateien werden für Plaintext/Klartext E-Mails nicht verwendet.
Wenn im Projekt Ordner /usr/PROJEKT/
ein lib/mails/
Ordner existiert, werden die header.html
und/oder die footer.html
aus diesem Ordner verwendet.
Falls kein Projektordner existiert, werden die Dateien aus dem aktuell verwendete Template ausgelesen.
-
/usr/PROJEKT/lib/mails/header.html
/usr/PROJEKT/lib/mails/footer.html
-
/packages/NAMESPACE/TEMPLATE/mails/header.html
/packages/NAMESPACE/TEMPLATE/mails/footer.html
E-Mail Template für eine einzelne Mail setzen
E-Mail Templates können auch für jede E-Mail separat gesetzt werden.
Diese Vorgehensweise ist nicht empfehlenswert, aber möglich.
Dazu können die Methoden QUI\Mail\Mailer->Template->setHeaderTemplate()
und setFooterTemplate()
genutzt werden.
Sie erwarten als Argument den Pfad zu einem Template. Der Pfad muss unterhalb des Ordners /usr/PROJEKT/lib/
liegen.
$Mailer = QUI::getMailManager()->getMailer();
$Mailer->Template->setHeaderTemplate($pathToTemplate);
$Mailer->Template->setFooterTemplate($pathToTemplate);