Fügen Sie zusätzliche header-Informationen in codeigniter E-Mail
Ich würde gerne einige zusätzliche Informationen auf die E-Mails, die gesendet wird, von codeigniter-library. Gibt es eine Möglichkeit, konfigurieren oder hinzufügen?
Ich soll zu kategorisieren, werden alle ausgehenden E-mail von meiner Website. Ich brauche zu gehören sendgrid Kategorie-header für die Verfolgung.
InformationsquelleAutor Arun SS | 2012-01-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dem CodeIgniter E-Klasse nicht manuell Header. Aber könnten Sie dies ändern, indem Sie die Erweiterung und das hinzufügen einer neuen Funktion, können Sie den sendgrid-Header.
Finden Sie unter "Erweitern Nativen Bibliotheken" im Abschnitt von der CodeIgniter-Handbuch:
https://www.codeigniter.com/user_guide/general/creating_libraries.html
Hier ist, was Sie den code in Ihre neue E-Klasse Aussehen könnte.
Würden Sie dann in der Lage sein, um Header zu setzen mit Ihrer neuen E-Mail-Klasse wie folgt aus:
Diese Seite wird erklären, was Header übergeben werden kann, um SendGrid:
http://sendgrid.com/docs/API%20Reference/SMTP%20API/
Ich habe diese Methode erfolgreich zum hinzufügen neuer Header für ausgehende E-mails. Allerdings, wenn ich es verwenden, es nicht mehr zahlt keine Aufmerksamkeit auf die email.php config-Datei enthält die smtp-Einstellungen. Gibt es eine Möglichkeit, beides zu tun?
Du hast Recht @Gortron, wenn Sie diese Klasse verwenden, verlieren Sie die Einstellungen aus config/email.php; die Art, wie ich es gelöst, ist die kopieren das ganze KONSTRUKT () - Funktion von der original-Klasse, nicht parent::__construct(); nicht sicher, warum das passiert, aber wenn ich kopieren Sie die vollständige Konstruktor, dann funktioniert es. Werde ich machen, eine andere Antwort unten, denn die Kommentare sind zu kurz, um den ganzen code 🙂
Ich habe aktualisiert, der code korrekt übergeben der $config-var (credit @suvozit für Ihre Antwort). Das sollte bedeuten, dass die config aus email.php wie erwartet funktionieren wird.
InformationsquelleAutor tekniskt
Okay, ich will einfach nur, um zu verbessern die beste Antwort hier.
Kredit geht an @Tekniskt, und der einzige Unterschied hier ist, dass die Einstellungen, die Sie vielleicht in /application/config/email.php werden ignoriert, das tut weh, vor allem, wenn Sie benutzerdefinierte SMTP-Einstellungen.
Hier ist der vollständige code der Klasse MY_Email.php ich habe verbessert aus der Antwort oben:
Hoffe, es hilft! 🙂
Habe ich meinen test, und es scheint jetzt /config/email.php enthalten ist, und die Einstellungen sind ordnungsgemäß weitergeleitet.
Cheers und danke für die Antwort! 🙂
InformationsquelleAutor d-wade
Pass die
$config
parameterFestlegen benutzerdefinierter header als
InformationsquelleAutor suvozit