WooCommerce AJAX添加到产品页面上的购物车 - 可变产品

时间:2015-01-26 08:40:04

标签: ajax wordpress woocommerce cart

我正在尝试使用可变产品在产品页面上为WooCommerce制作一个AJAX添加到购物车按钮。通过执行以下操作(在jQuery中)可以使用AJAX将产品添加到购物车

var data = { 
    action: 'woocommerce_add_to_cart', 
    product_id: p_id, 
    quantity: quantity 
}; 

$.post( "/wp-admin/admin-ajax.php", data, function( response ) { 

    if ( ! response ) 
        return; 

});

然而,我正在努力使其适用于变量产品(在产品页面上,而不是存档页面),这是我到目前为止所做的:

var params = { pa_size:'500g-resealable-pouch', pa_flavour:'chocolate' }; 
var variationParams = $.param( params ); 

var data = { 
    action: 'woocommerce_add_to_cart', 
    product_id: p_id, 
    quantity: quantity, 
    variation_id: var_id, 
    variation: variationParams 
}; 

$.post( "/wp-admin/admin-ajax.php", data, function( response ) { 

    if ( ! response ) 
        return; 

});

所有这一切都是将产品添加到购物车,但它忽略了变化,因此不会将“尺寸:X,风味:Y”放入购物篮中!

我知道我应该将数组发送到woocommerce_add_to_cart函数,但我无法弄清楚如何通过AJAX发送关联数组。我已经阅读了一些关于$ .param的内容,但它似乎没有用。

请注意,我想使用此功能而不是发布到“add_to_cart_url”,因为该方法会使其在整个地方输出“Product added to cart”消息。

0 个答案:

没有答案