WooCommerceen ”Tilaa vielä X eurolla niin saat ilmaisen toimituksen” ilmoitus kassalle

Useissa verkkokaupoissa on ilmainen toimitus tietyn summan ylittäville ostoskoreille. Tyypillinen raja on 50 – 100 euroa riippuen tuotteiden katteesta ja verkkokaupan alasta. Esimerkiksi urheiluvälinekaupassa raja on suuremmasta päästä, koska keskiostos on suurempi. Kirjakaupassa taas raja on pienempi, koska tyypillinen keskiostoskin on pienempi. Ilmaisen toimituksen raja tulisi olla sellainen, että se kannustaa tilaamaan lisää, mutta ei ole liian suuri asiakkaille saavutettavaksi suhteutettuna keskiostokseen.

Ilmaisen toimituksen raja on hyvä keino kasvattaa keskiostosta, kun asiakkaat pyrkivät ylittämään rajan saadakseen ilmaisen toimituksen. Yleensä verkkokaupoissa ei kuitenkaan erikseen kassalla ilmoiteta rajasta. Se jää helposti osalta asiakkaista huomaamatta, jos rajasta mainitaan vain toimitusehdoissa.

WooCommerceen on kuitenkin helppo lisätä ilmoitus ilmaisesta toimituksesta koodilla. Alla oleva koodi on esimerkki, miten ilmoitus näytetään kassalla, kun ilmaisen toimituksen raja on 50 euroa ja ostoskori alittaa sen. Ilmoitus näyttää ”Tilaa vielä X eurolla”, joka kertoo asiakkaalle, kuinka paljon ostoskoriin on lisättävä saadakseen ilmaisen toimituksen.

Esimerkki

Koodi

Koodin voi lisätä Code Snippets -lisäosalla (suositeltu) tai teeman functions.php tiedostoon. Mikäli ilmaisen toimituksen raja eroaa 50 eurosta, rajaa voi vaihtaa riviltä 9.

/**
 * Näytä ilmoitus ilmaisesta toimituksesta kassalla
 */
add_action( 'woocommerce_before_checkout_form_cart_notices', 'snippet_add_checkout_notice', 10, 0 );
function snippet_add_checkout_notice() {
	if ( is_checkout() && WC()->cart ) {
		$total = WC()->cart->get_cart_contents_total(); // Hae ostoskorin välisumma alennusten jälkeen
		$limit = 50.00; // Ilmaisen toimituksen raja, muuta tarvittaessa
		
		// Jos välisumma on pienempi kuin ilmaisen toimituksen raja, näytä ilmoitus
		if ( $total < $limit ) {
			// Laske erotus
			$diff = $limit - $total;
			$diff_formatted = wc_price( $diff, array( 'currency' => false ) );
			
			// Näytä ilmoitus
			wc_add_notice( sprintf( "Lisää vielä %s arvosta tuotteita ostoskoriin, niin saat ilmaisen toimituksen!", $diff_formatted ), 'notice' );
		}
	}
}