CAMPUS Code Snippets

Bij afhaal extra tekst in WooCommerce e-mails

PROBLEEM

PHP
function woofers_woocommerce_email_customer_details( $order, $sent_to_admin, $plain_text, $email ) {
    if ( $email->id == 'customer_processing_order' && $order->has_shipping_method( 'local_pickup' ) ) {
        echo __( '<strong>U ontvangt een mailtje wanneer uw bestelling klaarligt.</strong><br/><br+>', 'woocommerce' );
    // For 'completed'
    } elseif( $email->id == 'customer_completed_order' && $order->has_shipping_method( 'local_pickup' ) ) {
        echo __( '<strong>Uw bestelling ligt klaar. <a href="https://www.website.be/contact/">Bekijk onze openingsuren</a></strong><br/><br/>', 'woocommerce' );      
    }
}
add_action( 'woocommerce_email_before_order_table', 'woofers_woocommerce_email_customer_details', 10, 4 );




function woofers_change_processing_email_subject( $subject, $order ) {
	if ( $order->has_shipping_method( 'local_pickup' ) ) {
	   $subject = 'Uw bestelling ligt klaar voor afhaal';
	   return $subject;
	}
	else {
		$subject = 'Uw bestelling is verzonden.';
		return $subject;
	}
}
add_filter( 'woocommerce_email_subject_customer_completed_order', 'woofers_change_processing_email_subject', 10, 2 );

WooCommerce stuurt altijd dezelfde bevestigingsmails uit na een bestelling. Of de klant nu opteert voor verzending of afhaal. En dat is best lastig.

De tekst in de huidige WooCommerce mails geven niet aan wanneer een bestelling klaarligt voor afhaal. Als gevolg moet de webshop eigenaar nog manueel een mailtje na sturen.

Met WOOFERS kunnen we dit perfect oplossen met een beetje custom WooCommerce code.

WooCommerce status “in behandeling”: afhaaltekst in e-mail

De status “in behandeling” betekent dat er een betaling is ontvangen. Het zou dus cool zijn als we in deze mail extra informatie kunnen meegeven wanneer de koper heeft gekozen voor afhaal.
Op die manier vermijd je meteen support-mails en telefoontjes: “wanneer ligt m’n bestelling klaar?”

De volgende tekst voegen we hier toe:

U ontvangt een mailtje wanneer uw bestelling klaarligt.

woocommerce extra tekst bij afhaal in behandeling

WooCommerce status “afgerond”: afhaaltekst in onderwerp en e-mail

De status “afgerond” is de laatste status van een WooCommerce bestelling, namelijk dat de bestelling verzonden wordt. Of in dit geval: klaarligt voor afhaal.

We willen dus vermijden dat de webshop eigenaar apart manueel deze mail moet uitsturen. Dus coderen we het zodanig dat deze tekst vervat zit in de “afgerond”-mail.

In bovenstaande mail zie je 2 zaken:

  • afhaaltekst in het onderwerp van de e-mail. Op die manier hoeft de klant de mail niet te openen om te weten of de bestelling klaarligt. Het onderwerp van de mail is super duidelijk. Het ligt klaar!
  • In de e-mail staat er extra tekst én een linkje naar de contactpagina voor de openingsuren. Dat is handig als er brug -of feestdagen aankomen.

Custom code in WooCommerce

Om die teksten in de mails te steken is er custom WooCommerce code nodig. Vermoedelijk zijn er her en der wel plugins die dit kunnen. Maar wederom vertraagt elke extra (onnodige) plugin je webshop.

En met maatwerk code voeg je enkel datgene toe wat je écht wenst te zien. Geen overload, lekker strak en snel. En bovendien: het vraagt absoluut niet veel code.

De code om afhaaltekst in je bestelmails te krijgen. Plaats deze in je functions.php bestand.