WooCommerce: Vô hiệu hóa cổng thanh toán cho từng quốc gia

17 Th11, 2021 admin

Nếu website của bạn phục vụ nhiều khách hàng đến từ các quốc gia, vùng lãnh thổ khác nhau trên thế giới, đôi khi bạn sẽ muốn kích hoạt hoặc loại bỏ một số cổng thanh toán cho từng quốc gia đó. Và đó cũng là yêu cầu khá phổ biến với những website đa quốc gia hiện nay.

Dưới đây, mình sẽ hướng dẫn bạn cách làm việc đó thông qua các tính năng có sẵn trong WooCommerce. Việc của bạn chỉ cần chọn cổng thanh toán mà bạn muốn kích hoạt hoặc loại bỏ (Paypal, Authorize, Stripe, VTCPay, Bảo Kim, Ngân lượng…), và chọn mã quốc gia (US, ES, IE, VN…); sau đó đưa các thông tin trên vào câu lệnh điều kiện bên dưới

Hướng dẫ lấy ID của cổng thanh toán trong woocommerce
Cách lấy ID của cổng thanh toán trong WooCommerce
add_filter( 'woocommerce_available_payment_gateways', 'dieuhau_payment_gateway_disable_country' );

function dieuhau_payment_gateway_disable_country( $available_gateways ) {
   global $woocommerce;

   // Bỏ qua nếu người đang nhập là admin
   if ( is_admin() ) return;

   //Ẩn cổng thanh toán Authorize nếu khách hàng KHÔNG đến từ Mỹ
   if ( isset( $available_gateways['authorize'] ) && $woocommerce->customer->get_billing_country()  'US' ) {
      unset( $available_gateways['authorize'] );
   }
   //Bỏ cổng thanh toán Paypal nếu khách hàng đến từ Mỹ
   else if ( isset( $available_gateways['paypal'] ) && $woocommerce->customer->get_billing_country() == 'US' ) {
      unset( $available_gateways['paypal'] );
   }

   return $available_gateways;
}

Ở đoạn code trên, bạn chỉ cần thay thế ID của cổng thanh toán mà bạn muốn áp dụng vào đoạn [‘authorize’] hoặc [‘paypal’] (chỉ trong chữ trong dấu ngoặc đơn ) và mã quốc gia ở chỗ ‘US’. Như vậy đã xong rồi, hay lưu lại và kiểm tra xem được chưa nhé

Thêm đoạn code trên vào đâu?

Bạn có thể thêm đoạn code PHP trên vào cuối cùng của file functions.php của child theme (trước ký tự “?>” nếu có). Về CSS, bạn có thể thay đổi trong file custom.css của child theme. Trước khi thay đổi, hãy đảm bảo rằng bạn biết mình đang làm gì, vì việc thay đổi này có thể gây lỗi hoặc chết website. Nếu bạn cần thêm hướng dẫn, bạn hãy để lại bình luận ở bên dưới hoặc xem thêm các hướng dẫn khác trên dieuhau.com.

Đoạn code trên vẫn còn hoạt động?

Xin hãy để lại bình luận bên dưới nếu đoạn code trên hoạt động như mong đợi với bạn. Mình luôn sẵn sàng cập nhật, chỉnh sửa nếu đoạn code không làm việc với các phiên bản mới của WordPress và WooCommerce.

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận