1)
So. Eine Anpassung einer Zeile in der class.mailer.php auf
Code: Alles auswählen
public function sendMail($from, $to, $subject, $body = '', $cc = NULL, $bcc = NULL, $replyTo = NULL, $resend = false, $contentType = 'text/html') {
bringt schon mal eine vernünftige HTML-Mail zustande. Jetzt muss ich nur noch eine Möglichkeit finden, die hardcodierte Änderung hinsichtlich künftiger Updates aus dem Modul heraus anzusprechen, heißt "irgendwie" hier:
Code: Alles auswählen
$mailer = new cMailer();
$mailer->sendMail($email, $name, $mail_subject, $mail_body);
EDIT:
So geht's, ein Beispiel mit mehreren Empfängern und Auswahl von text/html oder text/plain:
Code: Alles auswählen
$send_from_email="mail@domain.de";
$recipients_in_array=array("peter@test.de","holla@waldfee.de");
$content_type="text/html";
$mail_subject="Infos im Betreff";
$mail_body="<table><tr><td>Name:</td><td>Lorem ipsum</td></tr></table>";
$mail_body_plain_text="Name: Lorem ipsum";
$mailer = new cMailer();
$message = Swift_Message::newInstance();
$message->setFrom($send_from_email);
$message->setSubject($mail_subject);
$message->setContentType($content_type);
if($content_type=="text/html") $message->setBody($mail_body);
else $message->setBody($mail_body_plain_text);
foreach($recipients_in_array as $recipient)
{
$message->setTo($recipient);
$mailer->send($message);
}
Eine Anpassung in der class.mailer.php ist dann NICHT mehr notwendig!
2)
Aufgetauchte Zusatzfrage beim Lesen der Kommentare in der class.mailer.php:
* By default the cMailer tries to use an SMTP transport with optional
* authentication. If starting the SMTP transport fails, a simple MAIL
* transport will be used (using PHP's mail() function).
Wie finde ich heraus, dass smtp nicht geklappt hat? Kommt dann eine Fehlermeldung? Vor allem wenn statt der function
$mailer->sendMail(...);
aus der class.mailer.php
$mailer->send(...);
verwendet wird?
3)
Hat jemand evtl. ein eigenes Kontaktformular zustande gebracht, bei dem mit dem cMailer() eine Mail mit per Formular hochgeladenem Dateianhang drangeflanscht ist? Dann müsste ich hier nicht das Rad neu erfinden - allen Selbstlerneffekten zum Trotz...
EDIT:
Dazu braucht es in der Tat - für die Generierung der Mail jedenfalls - nur eine weitere Zeile:
Code: Alles auswählen
$message->attach(Swift_Attachment::fromPath($_FILES['attachment']['tmp_name'])->setFilename($_FILES['attachment']['name']));
Damit bliebe nur noch Frage 2 zu beantworten...