gpt4 book ai didi

javascript - 以编程方式添加到购物车时自动 'refreshing' woocommerce 的购物车

转载 作者:行者123 更新时间:2023-12-03 11:23:55 25 4
gpt4 key购买 nike

我在 WordPress 中使用 woocommerce。

我使用以下内容在我的一个页面中显示购物车:

 <div id="shopping-cart"><?php echo do_shortcode('[woocommerce_cart]');?></div>

当用户使用以下代码单击按钮时,我将使用我自己的函数将产品添加到此购物车:

 function addToCart(p_id){
alert("Adding to cart:"+p_id);
jQuery.get('/wordpress/?post_type=product&add-to-cart=' + p_id, function(response) {
// call back
alert(response);
});

//jQuery("#shopping-cart").append("[woocommerce_cart]");
alert("Added to cart:"+p_id);
}

我通过以下代码调用此 javascript:

 <button type="button" onclick="return addToCart(18);">Add to cart</button>

该代码有效,但使用 do_shortcode 创建的购物车在 ajax 请求完成后不会更新。

有人可以告诉我如何在获取请求完成时自动更新购物车吗?

最佳答案

Documentation来救援:)

// Ensure cart contents update when products are added to the cart via AJAX (place the following in functions.php)
add_filter('add_to_cart_fragments', 'woocommerce_header_add_to_cart_fragment');

function woocommerce_header_add_to_cart_fragment( $fragments ) {
global $woocommerce;
ob_start();
?>
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e('View your shopping cart', 'woothemes'); ?>"><?php echo sprintf(_n('%d item', '%d items', $woocommerce->cart->cart_contents_count, 'woothemes'), $woocommerce->cart->cart_contents_count);?> - <?php echo $woocommerce->cart->get_cart_total(); ?></a>
<?php
$fragments['a.cart-contents'] = ob_get_clean();
return $fragments;
}

您可能需要调整 HTML 以适合您的设计。

关于javascript - 以编程方式添加到购物车时自动 'refreshing' woocommerce 的购物车,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26998145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com