Entfernen Produkt in den Warenkorb mit ajax in woocommerce
Möchte ich entfernen Sie das Produkt in woocommerce Warenkorb mit ajax, ohne auf den link klicken.
Wenn Sie Begegnung diese Art der Funktionalität, helfen Sie uns bitte.
add_action( 'wp_footer', 'add_js_to_wp_wcommerce');
function add_js_to_wp_wcommerce(){ ?>
<script type="text/javascript">
jQuery('.remove-product').click(function(){
var product_id = jQuery(this).attr("data-product_id");
jQuery.ajax({
type: 'POST',
dataType: 'json',
url: "/wp-admin/admin-ajax.php",
data: { action: "product_remove",
product_id: product_id
},success: function(data){
console.log(data);
}
});
return false;
});
</script>
<?php }
add_action( 'wp_ajax_product_remove', 'product_remove' );
add_action( 'wp_ajax_nopriv_product_remove', 'product_remove' );
function product_remove() {
global $wpdb, $woocommerce;
session_start();
foreach ($woocommerce->cart->get_cart() as $cart_item_key => $cart_item){
if($cart_item['product_id'] == $_POST['product_id'] ){
//Remove product in the cart using cart_item_key.
$woocommerce->cart->get_remove_url($cart_item_key);
}
}
print_r($woocommerce->cart->get_cart());
//echo json_encode(array('status' => 0));
exit();
}
InformationsquelleAutor user3331550 | 2014-02-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
könnten Sie die WC_Cart
set_quantity
MethodeTun und wie Sie diese in Ihrem php:
Sehr schöne Lösung!
Nur beachten Sie, dass dieser code funktioniert nicht für ein variables Produkt. In diesem Fall werden Sie ether hinzufügen
$variation_id
um die Funktiongenerate_cart_id()
oder Sie übergeben die$cart_id
(eigentlich ist es korrekt genannt$cart_item_key
von der ajax-Skript schon.Nice one @Naabys, danke
Ich kann nicht scheinen, um es an die Arbeit für ein variables Produkt. Ich habe an meine variation ID als parameter in generate_cart_id, wie die docs Zustand, aber es passiert nichts. Bin ich etwas vergessen?
InformationsquelleAutor Greg Berger
verwenden :
InformationsquelleAutor user6172224
Versuchen, diese :
InformationsquelleAutor joseph