- Tags: WooCommerce
- Categories: Snippets, WordPress Snippets
Code Snippet
When using WooCommerce you may want to limit the number of items that can be initially placed in the cart, or can be increased to while already in the cart.
PHP
Limiting the Number of Items when Adding to the cart
Place the following code anywhere in your theme’s functions.php document. Set the limit on line 7.
// limiting the number of items in cart when adding to the cart
function limit_number_of_items_allowed_cart_added( $passed, $product_id, $quantity ) {
$cart_items_count = WC()->cart->get_cart_contents_count();
$total_count = $cart_items_count + $quantity;
if( $cart_items_count >= 99 || $total_count >99 ){
// set to false
$passed = false;
// display a message
wc_add_notice( __( 'If you require a quantity of more than 99 products to be shipped, please Contact Sales in lieu of placing your order online. Thank you, and we apologize for any inconvenience.', 'woocommerce' ), 'error' );
}
return $passed;
}
add_filter( 'woocommerce_add_to_cart_validation', 'limit_number_of_items_allowed_cart_added', 10, 3 );
Limiting the Number of Items when Increasing from within the Cart
Place the following code anywhere in your theme’s functions.php document. Set the limit on line 8.
// limiting the number of items in cart when updating within the cart
function limit_number_of_items_allowed_cart_update( $passed, $cart_item_key, $values, $updated_quantity ) {
$cart_items_count = WC()->cart->get_cart_contents_count();
$original_quantity = $values['quantity'];
$total_count = $cart_items_count - $original_quantity + $updated_quantity;
if( $cart_items_count > 99 || $total_count > 99 ){
// set to false
$passed = false;
// display a message
wc_add_notice( __( 'If you require a quantity of more than 99 products to be shipped, please Contact Sales in lieu of placing your order online. Thank you, and we apologize for any inconvenience.', 'woocommerce' ), 'error' );
}
return $passed;
}
add_filter( 'woocommerce_update_cart_validation', 'limit_number_of_items_allowed_cart_update', 10, 4 );
We’d like to acknowledge that we learned a great deal of our coding from W3Schools and TutorialsPoint, borrowing heavily from their teaching process and excellent code examples. We highly recommend both sites to deepen your experience, and further your coding journey. We’re just hitting the basics here at 1SMARTchicken.
Why 1SMARTchicken?
See More →
Thanks for your support!
WordPress Books
All are affiliate links. Thank you for your support!
WORDPRESS NOTES:
- All modifications to a theme or plugin should be made by creating a child theme and placing the changes there; changes made to the parent theme will be overwritten the next time it updates
Feedback
If you see an error on the page or the code itself is incorrect or incomplete, or just plain wrong, please let us know. We’re always learning. NOTE: we do not sell your information and will not send you spam emails.