Dieser Code funktioniert nun und legt ab einem festgelegten Bestellwert einen wählbaren Artikel in den Warenkorb (ich habe den Artikel kopiert, die Kopie nicht sichbar im Shop gemacht und den Warenwert auf 0 gesetzt, so dass es ein kostenloser Bonus ist. Hier der Code und danach der noch offene Fehler:
* goes in theme functions.php or a custom plugin
**/
// add item to cart on visit depending on cart total value
add_action( 'init', 'add_product_to_cart' );
function add_product_to_cart() {
if ( ! is_admin() ) {
global $woocommerce;
$product_id = 479; [COLOR=#ff0000]EURE WOOCOMMERCE ARTIKEL ID[/COLOR]
$found = false;
$cart_total > 200; [COLOR=#ff0000]MINDESTBESTELLWERT[/COLOR]
if( $woocommerce->cart->total >= $cart_total ) {
//check if product already in cart
if ( sizeof( $woocommerce->cart->get_cart() ) > 200 ) {
foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
if ( $_product->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 );
}
}
}
}
Jetzt zum Fehler: Wenn ich Artikel in den Warenkorb lege und auf 200 EUR komme, wird der Bonus Artikel in den Warenkorb gelegt. Wenn ich dann aber ein paar Artikel lösche und unter die 200 EUR rutsche, wird dieser nicht wieder automatisch gelöscht. Kann hier jemand den Code dementsprechend erweitern?