Home WordpressWordPress cơ bản Giới hạn số lượng sản phẩm trong giỏ hàng – WooCommerce

Giới hạn số lượng sản phẩm trong giỏ hàng – WooCommerce

by admincp

Trong bài học trước mình có hướng dẫn các bạn cách cấu hình giá trị đơn hàng tối thiểu trong WooCommerce. Khi người dùng thêm sản phẩm vào giỏ hàng, và cửa hàng của bạn yêu cầu giá trị đơn hàng tối thiểu trước khi có thể đặt mua. Trong bài hôm nay chúng ta sẽ giới hạn số lượng sản phẩm.

Với một số cửa hàng bạn sẽ cần bán một sản phẩm với số lượng nhiều. Ví dụ nghìn quả trứng , hay cây nến ở dạng bó có từ 3,6,12. Trong bài này mình sẽ muốn khách hàng mua một số lượng sản phẩm nhất định, số lượng này bằng chia hết cho n (n là số bất kỳ)

Mặc định không có cấu hình sẵn trong WooCommerce. Ví dụ sau mình lấy tổng số lượng sản phẩm bạn có trong giỏ hàng phải gấp 5 lần hay chia hết cho 5. Để thực hiện bạn thêm dòng code sau vào cuối tệp functions.php

add_action( 'woocommerce_check_cart_items', 'woocommerce_check_cart_quantities' );

function woocommerce_check_cart_quantities() {

global $woocommerce;

$multiples = 5;

   $total_products = 0;

   foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {

       $total_products += $values['quantity'];

   }

   if ( ( $total_products % $multiples ) > 0 )

       $woocommerce->add_error( sprintf( __('You need to buy in quantities of %s products', 'woocommerce'), $multiples ) );

}

Bây giờ bạn thêm một sản phẩm vào giỏ hàng và nhấn nút “View cart” để chuyển đến trang giỏ hàng. Ngay lập tức có một thông điệp cảnh báo xuất hiện như hình sau:

Thậm trí không cho phép bạn thực hiện thanh toán nếu bạn nhấn nút thanh toán.

Đến khi số lượng mua có gấp 5 lần, bạn sẽ thấy không còn nội dung thông báo lỗi nữa & có thể thực hiện thanh toán hợp pháp.

Chúc bạn thành công

Để nhận được bài viết mới vui lòng đăng ký kênh kiến thức WordPress từ A-Z ở Form bên dưới. Bạn cũng có thể nhận được sự trợ giúp trên TwitterFacebook

Liên hệ

Công ty chuyên Thiết kế website uy tín nhất Miền Bắc: http://vinastar.net

Hotline tư vấn: 0989 48 3456

Nguồn: Sưu tầm trên internet

You may also like

Leave a Comment