Thiết lập giao nhận – Miễn phí giao nhận

, Posted by

Trong một vài trường hợp, chúng ta có thể sẽ muốn miễn cho khách hàng miễn phí giao nhận (free ship) thay vì lấy phí để giữ chân khách hàng. Và với Woocommerce, chúng ta có khá nhiều cách để cho phép họ nhận được ưu đãi này như sử dụng mã khuyến mãi (coupon), đơn hàng có giá trị cao. Trong bài này, chúng ta sẽ tìm hiểu về cách thiết lập giao nhận miễn phí được tích hợp sẵn trong Woocommerce.

Để bật giao hàng miễn phí, chúng ta sẽ bật trong Woocommerce -> Cài đặt -> Miễn phí giao hàng.

woocommerce-shipping-05

Trong đây sẽ có các tùy chọn như sau:

  • Bật/Tắt: Bật tắt phương thức giao hàng miễn phí.
  • Tên phương thức: Tên phương thức giao hàng sẽ được hiển thị.
  • Phương thức hiện có tại: Tùy chỉnh quốc gia có thể áp dụng phương thức này.
  • Điều kiện miễn phí giao hàng..: Thiết lập kiểu áp dụng giao hàng miễn phí.
  • Giá trị đơn hàng tối thiểu: Giá trị thành tiền của đơn hàng tối thiểu để có thể áp dụng phương thức này, bạn phải chọn điều kiện là giá trị đơn hàng tối thiểu thì thiết lập này mới có hiệu lực.

Ví dụ, mình muốn áp dụng miễn phí giao hàng khi đơn hàng có giá trị từ 1.000.000 đồng trở lên thì sẽ thiết lập thế này.

woocommerce-shipping-06

Thế nhưng cái buồn cười là khi áp dụng phương thức giao hàng miễn phí thì các phương thức giao hàng khác vẫn còn hiệu lực và hiển thị. Chúng ta nên ẩn các phương thức giao nhận khác khi phương thức giao nhận miễn phí được kích hoạt bằng cách chèn code dưới đây vào tập tin functions.php của theme (Giao diện -> Sửa -> functions.php):

/**
 * woocommerce_package_rates is a 2.1+ hook
 */
add_filter( 'woocommerce_package_rates', 'hide_shipping_when_free_is_available', 10, 2 );
 
/**
 * Hide shipping rates when free shipping is available
 *
 * @param array $rates Array of rates found for the package
 * @param array $package The package array/object being shipped
 * @return array of modified rates
 */
function hide_shipping_when_free_is_available( $rates, $package ) {
 
 // Only modify rates if free_shipping is present
 if ( isset( $rates['free_shipping'] ) ) {
 
 // To unset a single rate/method, do the following. This example unsets flat_rate shipping
 unset( $rates['flat_rate'] );
 
 // To unset all methods except for free_shipping, do the following
 $free_shipping = $rates['free_shipping'];
 $rates = array();
 $rates['free_shipping'] = $free_shipping;
 }
 
 return $rates;
}

Kết quả ta có:

woocommerce-shipping-07

Trường hợp bạn muốn đặt điều kiện miễn phí giao nhận chuyên nghiệp hơn và đầy đủ hơn, bạn có thể cài thêm plugin WooCommerce Advanced Free Shipping để thiết lập lại nhé, plugin này còn có một phiên bản trả phí chuyên nghiệp hơn nữa bán với giá $17 tại đây.

Okay, mình nghĩ là thiết lập miễn phí giao nhận trong Woocommerce cũng không có quá nhiều điều cần phải giải thích vì cách sử dụng của nó cũng tương đối đơn giản thôi. Tiếp tục bài viết kế tiếp, mình sẽ nói qua về tính năng thêm một kiểu tỷ lệ sàn nữa để bạn có thể thêm nhiều lựa chọn giao hàng cho cửa hàng của mình.