WooCommerce E-Mails anpassen

Wir kann ich den Inhalt der E-Mails bearbeiten?

Beide Plugins aktivieren, das kostenlose WP HTML Mail und das AddOn WP HTML Mail WooCommerce.

Dann unter Einstellungen -> E-Mail Template -> WooCommerce oben auf „E-Mails individuell bearbeiten“ wechseln und dann werden die einzelnen Mails unten aufgelistet und können einzeln inhaltlich bearbeitet werden.

Wie füge ich eigene Platzhalter im Mailbuilder ein?

Um eigene dynamische Inhalte als Platzhalter in deinen WooCommerce E-Mails zu verwenden, schreibe den folgenden Code in die functions.php deines (Child-) Themes:

add_filter( 'haet_mail_placeholder_menu', 'add_mailbuilder_placeholder' );
add_filter( 'haet_mail_order_placeholders', 'populate_mailbuilder_placeholder', 10, 3 );

function add_mailbuilder_placeholder( $placeholder_menu ){
    if( is_array( $placeholder_menu ) ){
        $placeholder_menu[] = array(
                'text'      => 'My Placholder Name',
                'tooltip'   => '[MY_PLACEHOLDER]',
            );
    }

    return $placeholder_menu;
}


function populate_mailbuilder_placeholder( $order, $wc_order, $settings ){
    $order['my_placeholder'] = 'your value';
    return $order;
}

Die erste Funktion erstellt den Platzhalter im Dropdown deines Editors, die zweite Funktion gibt dem Platzhalter einen Wert.

Wie füge ich die verwendeten Gutscheine im E-Mail Text ein?

Dazu fügen wir einen neuen Platzhalter ein und geben diesem dann den entsprechenden Inhalt.

Kopiere den folgenden Code in die functions.php deines (Child-)Themes und passe ihn an deine Anforderungen an:

add_filter( 'haet_mail_placeholder_menu', 'add_mailbuilder_coupons_placeholder' );
add_filter( 'haet_mail_order_placeholders', 'populate_mailbuilder_coupons_placeholder', 10, 3 );
function add_mailbuilder_coupons_placeholder( $placeholder_menu ){
    if( is_array( $placeholder_menu ) ){
        $placeholder_menu[] = array(
                'text'      => 'Coupons',
                'tooltip'   => '[COUPONS]',
            );
    }
    return $placeholder_menu;
}

function populate_mailbuilder_coupons_placeholder( $order, $wc_order, $settings ){
    $coupons_text = '';
    if( $wc_order ){
        $coupons =  $wc_order->get_used_coupons();
        if( is_array( $coupons ) && count( $coupons ) ){
            $coupons_text .= 'You have used the following coupons: <br>';

            foreach( $coupons as $coupon_name ){

                // Retrieving the coupon ID
                $coupon_post_obj = get_page_by_title($coupon_name, OBJECT, 'shop_coupon');
                $coupon_id = $coupon_post_obj->ID;

                // Get an instance of WC_Coupon object in an array(necesary to use WC_Coupon methods)
                $coupons_obj = new WC_Coupon($coupon_id);
                $discount_type = $coupons_obj->get_discount_type();
                $amount_str = '';
                if( $discount_type == 'fixed_cart' )
                    $amount_str = '- €' . $coupons_obj->get_amount();
                elseif( $discount_type == 'percent' )
                    $amount_str = '- ' . $coupons_obj->get_amount() . '%';
                //elseif( $discount_type == ...
                
                $coupons_text .= '<strong>' . $coupons_obj->get_code() . '</strong>: ' . $amount_str . ', ';

            }
        }
    }
    $order['coupons'] = $coupons_text;
    return $order;
}

Wie füge ich Benutzerdefinierte Felder für Bestellungen im Mailbuilder ein?

Mit dem Platzhalter „Bestellungen Meta Feld“ kannst du jeder WooCommerce E-Mail ein benutzerdefiniertes Metafeld aus deinen WooCommerce-Bestellungen hinzufügen.

WooCommerce Meta-Felder für Bestellungen

In unserem Beispiel verwenden wir ein benutzerdefiniertes Feld „Tracking-Nummer“. Dies kann von jedem Plugin eines Drittanbieters, von deiner ERP-Software oder manuell hinzugefügt werden.

Advanced Custom Fields

Du kannst auch individuelle Felder verwenden. Die Felder werden auf die gleiche Weise in der Datenbank gespeichert.

Den Platzhalter in der E-Mail einfügen

Navigiere nun zu Einstellungen -> E-Mail-Template-> WooCommerce und wähle eine E-Mail aus.

Klicke auf einen Textblock oder füge einen neuen hinzu. In der Dropdown-Liste „Platzhalter“ siehst du einen neuen Eintrag Erweitert -> Bestellung Meta Feld.

Klicke darauf und ersetze „…“ durch deinen Feldnamen (in diesem Beispiel „trackingnummer“).

Speichere deine Vorlage, kehre zur Übersicht zurück und sehe das Ergebnis in der Live-Vorschau unten auf der Seite.