当用户点击产品上的“添加到购物车”时,该商品已添加到购物车(ajax正常工作),但顶部菜单中显示的数字仍为(0),直到您刷新页面或转到另一个页。有没有办法让它立即动态更新onclick?
答案 0 :(得分:1)
您需要使用以下过滤器
woocommerce_add_to_cart_fragments
这是一个如何通过ajax将产品添加到购物车后获取当前购物车总数的示例。
add_filter( 'woocommerce_add_to_cart_fragments', 'my_cart_link_fragment' );
if ( ! function_exists( 'my_cart_link_fragment' ) ) {
function my_cart_link_fragment( $fragments ) {
global $woocommerce;
ob_start();
<span class="count"><?php echo wp_kses_data( sprintf( _n( '%d', '%d', WC()->cart->get_cart_contents_count(), 'storefront' ), WC()->cart->get_cart_contents_count() ) );?></span>
$fragments['a.cart-contents'] = ob_get_clean();
return $fragments;
}
将上面的代码放入你的functions.php