Cập nhật giỏ hàng và đếm giỏ hàng khi thêm sản phẩm

Khi thêm 1 sản phẩm vào giỏ hàng bằng AJAX, hệ thống sẽ tự động đếm số lượng của mini cart và cập nhật lại danh sách sản phẩm trong mini cart.

<div class="basket-item-count">
  <span class="cart-items-count">
  <?php
    echo WC()->cart->get_cart_contents_count();
  ?>
</span>
</div>

Mặc định, nếu dùng thẻ a có class là cart-contents sẽ được đếm tự động. Trong ví dụ bên trên sẽ sử dụng thẻ span có class là cart-items-count.

<div class="widget_shopping_cart_content">
   <?php
     echo woocommerce_mini_cart();
   ?>
</div>

Đối với nội dung của giỏ hàng, sử dụng thẻ div với class là widget_shopping_cart_content.

add_filter( 'woocommerce_add_to_cart_fragments', 'cart_count_fragments', 10, 1 );

function cart_count_fragments( $fragments ) {
    $fragments['div.basket-item-count'] = '<div class="basket-item-count"><span class="cart-items-count">' . WC()->cart->get_cart_contents_count() . '</span></div>';
    return $fragments;
}

 

Khi WooCommerce cập nhật cart fragments, hệ thống sẽ thêm thẻ div.basket-item-count vào trong mảng với nội dung đúng với đoạn code đầu tiên trong bài này.

5/5 - (1 bình chọn)

Lại Đình Cường

Tôi làm quen và phát triển WordPress từ năm 2008, cho đến nay thì đã có hơn 13 năm kinh nghiệm, thật không thể tin được. Tôi có đam mê và dành nhiều thời gian làm việc với WordPress mỗi ngày, hiện tại tôi đang phát triển giao diện và plugin cho WordPress.

Nếu bạn đang cần người làm trang web bằng WordPress? Hãy liên hệ với tôi ngay để được tư vấn nhé.