Magento – Zeilenumbrüche und Formatierungen in Kommentar und eMail des Admin

BildEin altbekanntes Problem bei Magento ist der Versand von Kommentaren an die Kunden durch den Administrator aus der Bestellung heraus.

Also das Problem ist weniger das Senden, als die Formatierung, die verloren geht.

Unter Kommentarverlauf und dort bei Kommentar zur Bestellung hinzufügen kann man Zeilenumbrüche einfügen bis einem die Finger bluten, jedoch wird in der Transaktionsemail, wie auch in der Kommentar Historie wie auch beim Kunden im Benutzerkonto kein Zeilenumbruch oder andere Formatierungen vorhanden sein.

Dies funktioniert nicht mit einfachen “Enter” Zeilenumbrüchen wie auch nicht mit “<br>” oder anderen.

So, nach dem Problem die Lösung:

Die Bestellkommentare tauchen auf in

  1. der Transaktionsemail an den Kunden (wenn der Haken gesetzt wurde)
  2. dem Kommentar Verlauf im Backend
  3. der Bestellübersicht im Benutzerkonto des Kunden (wenn auch hier der Haken gesetzt wurde)

Leider gibt es keine Superlösung aber eine Lösung:

  1. Im Ordner /app/code/core/Mage/Adminhtml/controllers/Sales/OrderController.php (also leider im Core) nach
    $comment = trim(strip_tags($data['comment']));

    suchen und durch

    $comment = nl2br($data['comment']);

    ersetzen. Hierdurch werden auf der einen Seite Formatierungen wie <br>,<b> etc. verarbeitet ABER auch der einfache Zeilenumbruch durch Enter drücken wird verarbeitet. Schreibt man also <br> und drückt anschließend Enter, gibt es zwei Zeilenumbrüche IN DER TRANSAKTIONSEMAIL.
    Wer also nur möchte, dass die eMails schön sind, dem reicht diese Änderung. Enter drücken funktioniert nun hierfür nicht aber für die Historie oder das Benutzerkonto.

  2. Im Ordner app/design/adminhtml/default/default/template/sales/order/view/history.phtml nach
    <?php echo $this->escapeHtml($_item->getComment(), array('b','br','strong','i','u')) ?>

    suchen und durch

    <?php echo $_item->getComment(); ?>

    ersetzen.
    Leider bewirkt dies nur, dass Formatierungen wie <br> etc. in der Admin Kommentar Historie verarbeitet werden, die Enter Zeilenumbrüche klappen aber dennoch nicht.

  3. Im Ordner /app/design/frontend/[base oder default]/[IhrTemplate]/template/sales/order/view.phtml nach Zeile
    <?php echo $this->escapeHtml($_historyItem->getComment()) ?>

    suchen und durch

    <?php echo $_historyItem->getComment() ?>

    ersetzen. Hier gilt selbiges wie bei Punkt 2. Nur Formatierungen werden übernommen, kein Enter.

Wie gesagt, dies ist leider keine optimale Lösung aber immerhin eine mit der man leben kann.

Genutzt in Magento Version 1.7. Fragen, Kommentare, Vorschläge? Gerne direkt oder als Kommentar.

Published by Covos

Seit 2009 arbeite ich nun intensiv mit Magento. Begonnen habe ich mit der Erstellung und dem Betrieb von B2C-Shops. Ausgeweitet wurde dies durch meine Tätigkeit im Logistik-Sektor. Hieraus entstanden erste spezialisierte B2E-Systeme. Heute arbeite ich tag-täglich mit spannenden B2C-, B2B- und B2E-Projekten und berichte in diesem Blog über Herausforderungen und gebe Insider-Tipps.

One comment on “Magento – Zeilenumbrüche und Formatierungen in Kommentar und eMail des Admin”

Leave a Reply

Your email address will not be published. Required fields are marked *