מינימום קניה בחנות ווקומרס
תוכן עניינים
הקוד מציג הודעה וגם חוסם את אפשרות ההזמנה כשהסכום הכולל בעגלה נמוך מהמינימום שתגדירו והוא פועל גם בעמוד עגלת הקניות וגם בעמוד התשלום
הגבלת מינימום סכום קניה בחנות ווקומרס
שימו לב להחליף את סכום המינימום בשורה 2 (כרגע מוגדר 100 ש”ח)
הוסיפו את הקוד לקובץ functions.php של תבנית הבת או באמצעות תוסף לניהול סניפטים (Snippets)
function get_min_cart_total() {
return 100; // שנה כאן את הסכום לפי הצורך
}
function show_min_cart_total_notice() {
if ( is_cart() || is_checkout() ) {
$min_total = get_min_cart_total();
$cart_total = WC()->cart->get_cart_contents_total();
if ( floatval( $cart_total ) < $min_total ) {
wc_print_notice(
'' . sprintf( __("מינימום הזמנה באתר הוא %s. ניתן להוסיף לעגלה מוצרים נוספים לפני המעבר לתשלום. תודה על ההבנה.", "woocommerce"), wc_price($min_total) ) . '',
'error'
);
}
}
}
add_action( 'woocommerce_before_cart', 'show_min_cart_total_notice' );
add_action( 'woocommerce_before_checkout_form', 'show_min_cart_total_notice' );
function validate_min_cart_total_before_checkout() {
$min_total = get_min_cart_total();
$cart_total = WC()->cart->get_cart_contents_total();
if ( floatval( $cart_total ) < $min_total ) {
wc_add_notice(
'' . sprintf( __("מינימום הזמנה באתר הוא %s. ניתן להוסיף לעגלה מוצרים נוספים לפני המעבר לתשלום. תודה על ההבנה.", "woocommerce"), wc_price($min_total) ) . '',
'error'
);
}
}
add_action( 'woocommerce_check_cart_items', 'validate_min_cart_total_before_checkout' );
function show_min_cart_total_notice_on_template_redirect() {
if ( is_checkout() && ! is_wc_endpoint_url( 'order-received' ) && ! is_admin() ) {
$min_total = get_min_cart_total();
$cart_total = WC()->cart->get_cart_contents_total();
if ( floatval( $cart_total ) < $min_total ) {
wc_add_notice(
'' . sprintf( __("מינימום הזמנה באתר הוא %s. ניתן להוסיף לעגלה מוצרים נוספים לפני המעבר לתשלום. תודה על ההבנה.", "woocommerce"), wc_price($min_total) ) . '',
'error'
);
}
}
}
add_action( 'template_redirect', 'show_min_cart_total_notice_on_template_redirect' );
תוכלו לשנות את ההודעה המוצגת ללקוחות בשורה 12 ובשורה 27