Skip to content

Instantly share code, notes, and snippets.

@woogists
Last active November 7, 2022 12:38
Show Gist options
  • Save woogists/0928d4b3df4ba423ddb74317a7979527 to your computer and use it in GitHub Desktop.
Save woogists/0928d4b3df4ba423ddb74317a7979527 to your computer and use it in GitHub Desktop.
Add another product depending on the cart total
/**
* Add another product depending on the cart total
*/
add_action( 'template_redirect', 'add_product_to_cart' );
function add_product_to_cart() {
if ( ! is_admin() ) {
global $woocommerce;
$product_id = 2831; //replace with your product id
$found = false;
$cart_total = 30; //replace with your cart total needed to add above item
if( $woocommerce->cart->total >= $cart_total ) {
//check if product already in cart
if ( sizeof( $woocommerce->cart->get_cart() ) > 0 ) {
foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
if ( $_product->get_id() == $product_id )
$found = true;
}
// if product not found, add it
if ( ! $found )
$woocommerce->cart->add_to_cart( $product_id );
} else {
// if no products in cart, add it
$woocommerce->cart->add_to_cart( $product_id );
}
}
}
}
@Unce
Copy link

Unce commented Dec 27, 2020

It doesn't delete product from cart if total goes below minimum.

@braddalton
Copy link

Based on my testing it doesn't delete product from cart if total goes below minimum but i think they didn't include everything. Its sample code to get you started and not a finished product for immediate usage.

@tymwie
Copy link

tymwie commented Nov 7, 2022

And you have an idea how to modify the code to add the product at a specific price. I want it to be free for 0.01.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment