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

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.

Về tác giả

Diều Hâu

Chào các bạn,

Mình là coder, đang sống và làm việc ở Mỹ. Mình thích viết lách nên muốn dành khoảng thời gian trống để chia sẻ các thủ thuật giúp các bạn xây dựng được trang web riêng của mình. Nếu bạn có bất kỳ câu hỏi nào, hãy comment ở dưới nhé, mình sẽ trả lời hết tất cả.

Trả Lời

avatar
 
smilegrinwinkmrgreenneutraltwistedarrowshockunamusedcooleviloopsrazzrollcryeeklolmadsadexclamationquestionideahmmbegwhewchucklesillyenvyshutmouth
  Đăng ký  
Thông báo về

Pin It on Pinterest

Share This

Share this post with your friends!