Jednou z často požadovaných funkcí e-shopu, je zobrazení zákazníkovi, za kolik mu zbývá nakoupit pro dopravu zdarma.
Snippet je poměrně jednoduchý, potřebujete jen definovat, od jaké částky je doprava zdarma a kolik je aktuálně v košíku.
add_action( 'woocommerce_before_cart_table', 'musilda_cart_free_shipping_notice' );
function musilda_cart_free_shipping_notice() {
$free_shipping_amount = 1000;
$total = WC()->cart->subtotal;
if ( $total < $free_shipping_amount ) {
$added_text = '<div class="woocommerce-message"><strong>Nakupte ještě za ' . wc_price( $free_shipping_amount - $total ) . ' pro získání dopravy zdarma</strong>';
$back_to_shop_link = wc_get_page_permalink( 'shop' );
$notice = sprintf( '%s<a class="button" href="%s">%s</a>', $added_text, esc_url( $back_to_shop_link ), __( 'Pokračovat v nákupu', 'musilda' ) . '</div>' );
echo $notice;
}
}
Po přidání produktu do košíku se vám zobrazí informace o tom, za kolik ještě musíte nakoupit.
toto je využití hooku woocommerce_before_cart_table, pokud by jste chtěli, aby se upozornění zobrazovalo na celém webu, musíte to zobrazit v jiném hooku, například v woocommerce_before_main_content.