• DE
  • EN
  • ES
  • NL

Blog

Neue Magento-Erweiterung zum automatischen Anhängen von Bildern an E-Mails


Dieser Artikel wurde ursprünglich auf Englisch im Magentron Blog als New Magento extension for automatically attaching images to emails veröffentlicht.

Veröffentlicht am Dienstag, 5. Juli 2011 von Jeroen Derks.

Bekommen Sie auch manchmal E-Mails mit Bildern, die separat geladen werden müssen, weil sie nicht oder nicht richtig an die E-Mail angehängt sind? Mir geht es so, und ich muss sagen, ich mag das nicht besonders. Natürlich gibt es den Kompromiss, dass die E-Mail-Größe zunimmt, wenn Bilder angehängt werden — aber wenn der Absender darauf achtet, dass Anzahl und Größe der Bilder klein bleiben, sollte die Gesamtgröße der E-Mail noch akzeptabel sein.

Ich habe nach einer Lösung dafür in Magento gesucht und festgestellt, dass es noch keine Erweiterung gibt, die diese Funktionalität bietet. Da ich diese für unsere Magentron.com-Website haben wollte, habe ich beschlossen, dies als neue Erweiterung namens EmailImages zu implementieren und über Magento Connect zu veröffentlichen: EmailImages.

Die Erweiterung ist ziemlich geradlinig: Wenn im HTML-Body der E-Mail Bild-URLs verwendet werden, lädt sie diese herunter, cachet sie (mit dem Magento-Cache und einem eigenen Cache-Typ, sodass Sie ihn einfach leeren können) und hängt sie an die E-Mail an, wobei der Content-Type auf multipart/related geändert wird. Die Konfigurationsoptionen unter System -> Konfiguration -> Erweitert -> System -> Email Images erlauben Ihnen:

  • die Funktionalität ein-/auszuschalten
  • die maximale Cache-Zeit für die heruntergeladenen Bilder zu definieren (in Sekunden)
  • einen anderen regulären Ausdruck anzugeben
  • einen anderen Index für den regulären Ausdruck anzugeben
Diese letzten beiden Optionen sind für fortgeschrittene Anwender — wenn Sie nicht wissen, was sie sind oder wie man sie verwendet, ziehen Sie bitte einen Experten zurate, bevor Sie diese Einstellungen in einer Produktivumgebung ändern! Wir bieten auf Anfrage Beratung an, nutzen Sie bitte die Kontaktseite, falls Sie interessiert sind.

Die Erweiterung überschreibt die Modelle für Newsletter und E-Mails (konkret: core/email, core/template, newsletter/template). Leider gibt es vermutlich viele andere Erweiterungen, die diese Modelle ebenfalls überschreiben (z. B. die unverzichtbare Erweiterung ASchroder_SMTPPro), bitte testen Sie diese Erweiterung daher nur in einer Nicht-Produktivumgebung, bevor Sie sie auf einem Live-Server installieren. Bitte beachten Sie, dass dies an der Architektur von Magento liegt. Wenn jemand eine bessere Lösung hat, sind wir ernsthaft daran interessiert, davon zu hören — lassen Sie es uns wissen!

Da wir der Meinung sind, dass Software-Qualität sehr wichtig ist, auch für ein Open-Source-Projekt, haben wir uns die Mühe gemacht, PHPUnit-Tests mit Ecomdev_PHPUnit zu schreiben. Wir haben 100% Code-Coverage erreicht, und auch wenn das nicht viel sagen mag, wurden zumindest alle Codezeilen in den Unit-Tests durchlaufen. Dadurch konnten wir bereits einige Probleme verhindern, die sonst in der veröffentlichten Version vorhanden gewesen wären.

Wir hoffen, dass Sie unsere Erweiterung mögen, und wenn Sie Kommentare oder Feedback haben, würden wir uns freuen, davon zu hören. Bitte nehmen Sie sich die Zeit, uns über die Kommentare oder die Kontaktseite zu erreichen.

Benötigen Sie Hilfe bei PHP, Magento oder Laravel? Nehmen Sie Kontakt mit mir auf.