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

Lại Đình Cường

Tài liệu thiết kế website

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.

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest
0 Góp ý
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất