Jalara Studio

WooCommerce E-Mail-Templates bearbeiten

#


Das Plugin WooCommerce enthält 140 Template-Dateien1 zur Anpassung der Seiten und E-Mails. Zur Anpassung muss lediglich der Ordner templates aus dem Plugin-Ordner in das aktive Theme kopiert und anschließend in woocommerce umbenannt werden.

Im Verzeichnis /templates/emails/2 des Plugins WooCommerce befinden sich die Templates für die E-Mails. Im Ordner plain3 liegen die Templates, die verwendet werden, wenn in den Einstellungen des Plugins festgelegt wurde, dass die E-Mails als Klartext versendet werden sollen.

Zusätzlich oder auch alternativ ist es möglich, die in den Templates vorhandenen Hooks zum Hinzufügen oder Manipulieren der Funktionen zu nutzen.

E-Mails an den Kunden

Im folgendem soll der Inhalt der E-Mails angepasst werden, die die Bestellbestätigung enthalten, dem Kunden den Zahlungseingang bestätigen (sowie die Bearbeitung des Auftrages) und die zum Schluss mit der Versandmitteilung versendet werden. Hierfür sind die in den WooCommerce-Einstellungen zu findenden E-Mails Bestellung wartend, Bestellung in Bearbeitung und Bestellung fertiggestellt verantwortlich.

Die Einstellungen der E-Mails (Aktivierung, E-Mail-Benachrichtigungen und Bearbeitung der Templates) findest du im Backend mit Klick auf die Menüpunkte WooCommerceEinstellungenE-Mails:

Bestellung wartend / Customer On Hold Order

In den Einstellungen des Plugins WooCommerce innerhalb des Tabs Kasse können Anweisungen für die jeweils aktivierten Zahlungswege (Überweisung, Scheckzahlung, per Nachnahme) hinzugefügt werden, die in der E-Mail der Bestellbestätigung erscheint, die automatisch nach einer Bestellung gesendet wird, deren Zahlung noch nicht erfolgte.

Die darauf folgende Zeichenkette »Deine Bestellung wird solange zurückgestellt, bis wir deinen Zahlungseingang bestätigen. Nachfolgend findest du die Details zu deiner Bestellung:« (engl. "Your order is on-hold until we confirm payment has been received. Your order details are shown below for your reference:") befindet sich zum Anpassen in der Template-Datei customer-on-hold-order.php4 (b. z. w. in den deutschen Sprachdateien des Plugins).

Die E-Mail mit der Bestellbestätigung kann dem Kunden auch gesendet werden, wenn in den Bestelldetails der jeweiligen Bestellung, der Bestellstatus von Zahlung ausstehend auf In Wartestellung zurückgesetzt und anschließend die Bestellung aktualisiert wird. Hierbei wird auch eine Bestellbestätigungsemail an den Administrator gesendet.

Beispiel der Änderung in den Einstellungen* und in der Datei customer-on-hold-order.php

Betreff: Bestätigung Ihrer Bestellung bei {site_title} vom {order_date} (Bestellnummer: {order_number})
E-Mail Kopfzeile: Bestellung vom {order_date}
Veränderter String: _e( 'Ihre Bestellung wird zurückgestellt, bis der Zahlungseingang bestätigt ist. Nachfolgend finden Sie die Details zu Ihrer Bestellung.', 'woocommerce' );

  • * WooCommerceEinstellungenE-MailsBestellung wartend

Bestellung in Bearbeitung / Customer Processing Order

Nach dem Bestätigen des Zahlungseingangs und Klick auf In Bearbeitung (WooCommerce › Bestellungen › Bestellung #123) versendet WooCommerce eine E-Mail mit der Zeichenkette »Deine Bestellung ist bei uns eingegangen und wird nun bearbeitet. Deine Bestelldetails werden nachstehend zur Kontrolle angezeigt:« (engl. "Your order has been received and is now being processed. Your order details are shown below for your reference:"), die sich innerhalb der Template-Datei customer-processing-order.php5 befindet.

Diese E-Mail kann dem Kunden wiederholt gesendet werden, wenn in den Bestelldetails der jeweiligen Bestellung der Bestellstatus auf In Bearbeitung zurückgesetzt und anschließend die Bestellung aktualisiert wird.

Hinweis: Handelt es sich bei der Bestellung um digitale Waren oder wird die Ware direkt nach Zahlungseingang versendet, kann auch auf die E-Mail Bestellung in Bearbeitung verzichtet werden. Die Bestätigung des Zahlungseinganges kann in der E-Mail angegeben werden, die die Versandbestätigung enthält. Ist die E-Mail Bestellung in Bearbeitung aktiv könnte folgender Text innerhalb des Tabs E-Mails in den Einstellungen des Plugins angegeben werden:

Beispiel der Änderung in den Einstellungen* und in der Datei customer-processing-order.php

Betreff: Bestätigung Ihrer Zahlung (Bestellnummer: {order_number})
E-Mail Kopfzeile: Ihre Bestellung wird bearbeitet.
Veränderter String: _e( 'Ihre Zahlung ist bei uns eingegangen. Ihre Bestellung wird nun bearbeitet. Die Bestelldetails werden nachstehend zur Kontrolle angezeigt:', 'woocommerce' );

  • * WooCommerceEinstellungenE-MailsBestellung in Bearbeitung

Bestellung fertiggestellt / Customer Completed Order

Wurde die Ware versendet oder/und zum Download bereit gestellt, wird die Bestellung mit Klick auf Fertiggestellt abgeschlossen und eine E-Mail mit dem Satz »Hallo! Deine Bestellung bei TITEL DER WEBSITE wurde nun fertiggestellt. Deine Bestelldetails werden nachstehend zur Kontrolle angezeigt:« (engl. "Hi there. Your recent order on %s has been completed. Your order details are shown below for your reference:") an den Kunden versendet. Diese Zeichenkette befindet sich in der Template-Datei customer-completed-order.php6.

Beispiel der Änderung in den Einstellungen* und in der Datei customer-completed-order.php

Betreff: Bestellung ist abgeschlossen (Bestellnummer: {order_number})
E-Mail Kopfzeile: Ihre Bestellung ist abgeschlossen.
Veränderter String: Ihre Bestellung wurde versendet. / Ihre Bestellung steht zum Download bereit.

  • * WooCommerceEinstellungenE-MailsBestellung fertiggestellt

Tipp: Du kannst Methoden wie has_downloadable_item() und get_shipping_method() aus der Klasse WC_Abstract_Order7 im E-Mail-Template verwenden, um Zeichenketten für den Kunden ausgeben zu können, die passend zur Versandmethode oder zur Angabe der Downloadlinks sind:

if ( $order->has_downloadable_item() ){ 
    echo '<p>Nachstehend finden Sie die Downloadlinks:</p>'; 
}

Zeichenketten mit dem Filter Hook 'gettext' bearbeiten

Außer der Bearbeitung der Zeichenketten innerhalb der Template-Dateien oder mit Hilfe eines Plugins wie WPML8 zur Anpassung der Sprachdateien, kann der String auch mit dem Filter Hook 'gettext'9 manipuliert werden, wie folgender Codeschnipsel zeigt, der sich in ein seitenspezifisches Plugin oder in die functions.php im Child Themes einfügen lässt und die Zeichenkette der Template-Datei customer-on-hold-order.php (Bestellung wartend) beeinflusst:

function woocommerce_email_bestellung_wartend( $translated ) {
    $translated = str_replace( 'Deine Bestellung wird solange zurückgestellt, bis wir deinen Zahlungseingang bestätigen. Nachfolgend findest du die Details zu deiner Bestellung:', 'Ihre Bestellung wird zurückgestellt, bis der Zahlungseingang bestätigt ist. Nachfolgend finden Sie die Details zu Ihrer Bestellung:', $translated);
    return $translated;
}
add_filter('gettext', 'woocommerce_email_bestellung_wartend');

Hinweis: Der Nachteil dieser Methode ist, dass der übersetzte String beim nächsten Update der Sprachdateien10 11 verändert sein kann und der Codeschnipsel daraufhin erneut angepasst werden muss. Alternativ kann in den allgemeinen WordPress-Einstellungen die Sprache der Website auf Englisch (United States) umgeschaltet werden und der englische Original-String im Codeschnipsel entsprechend übersetzt werden.

Weitere Templates bearbeiten

Die E-Mail-Templates, die eine Zeichenkette für den Kunden enthalten sind:

  1. customer-on-hold-order.php (Bestellung wartend)
  2. customer-processing-order.php (Bestellung in Bearbeitung)
  3. customer-completed-order.php (Bestellung fertiggestellt)
  4. customer-invoice.php (Kundenrechnung / Bestelldetails)
  5. customer-note.php (Hinzugefügte Anmerkung des Kunden)
  6. customer-refunded-order.php (Rückerstattete Bestellung)
  7. customer-new-account.php (neues Kundenkonto)
  8. customer-reset-password.php (Passwort zurücksetzen)

Außer diesen Templates können auch die E-Mail-Templates angepasst werden, die z.B. die Styles12 oder den Footer13 enthalten.

Tipp: Mit dem Plugin Edit WooCommerce Templates14, lassen sich alle 140 Templates von WooCommerce im Backend von WordPress bearbeiten und nach der Bearbeitung per Klick ins aktive Theme speichern.

Links