我的结帐页面上有一个自定义按钮,点击我通过AJAX将产品添加到购物车。
JS:
$('#add_domain_product').on('click', function() {
$.ajax({
url: Ajax.ajaxurl,
type: "POST",
data: {
action: 'add_domain_product',
},
success: function (data, status, xhr) {
// update command is executed.
console.log(data);
}
});
})
PHP:
add_action('wp_ajax_add_domain_product', 'bs_add_domain_product');
function bs_add_domain_product() {
global $woocommerce;
$woocommerce->cart->add_to_cart('633');
exit();
}
之后,我需要刷新订单审核,因此它也会显示我新添加的产品。我怎么能这样做?
答案 0 :(得分:22)
您需要做的就是在身体上调用触发器来更新购物车。
$( 'body' ).trigger( 'update_checkout' );
这将自动调用刷新购物车信息所需的所有后续AJAX调用,包括订单审核。
答案 1 :(得分:3)
在结帐页面:
jQuery(document.body).trigger("update_checkout")
在购物车页面中:
jQuery(document.body).trigger("wc_update_cart");