WPML
สถานะ
เปิด
รายงานสำหรับ
WPML Multilingual & Multicurrency for WooCommerce 5.3.5
ปลั๊กอิน/ธีมที่เกี่ยวข้อง
WooCommerce Payments
แท็กหัวข้อ
Compatibility

ภาพรวมของปัญหา

ขณะนี้ ไม่สามารถบันทึกการเปลี่ยนแปลงใด ๆ ใน Country availability ของการตั้งค่า WooPayments ของคุณเมื่อใช้ WPML Multilingual & Multicurrency for WooCommerce

ปัญหานี้คล้ายกับปัญหาที่มีการรายงานสำหรับ เกตเวย์ชำระเงิน WooCommerce Stripe

วิธีแก้ปัญหาชั่วคราว

ในระหว่างนี้ คุณสามารถพิจารณาหนึ่งในวิธีแก้ปัญหาต่อไปนี้

1) หากคุณต้องการจำกัด WooPayments ให้ใช้งานได้เพียงประเทศเดียว (เช่น ประเทศสเปน) คุณสามารถใช้โค้ดต่อไปนี้

// Limit Stripe to Spain.
add_filter( 'woocommerce_available_payment_gateways', function( $gateways ) {
	$country = WCML\MultiCurrency\Geolocation::getUserCountry();
	if ( $country ) {
		if ( 'ES' !== $country ) {
			unset( $gateways['woocommerce_payments'] );
		}
	}

	return $gateways;
} );

2) ในทางกลับกัน หากคุณต้องการจำกัด WooPayments สำหรับหลายประเทศ คุณสามารถใช้โค้ดรูปแบบนี้
// Limit WooPayments for several countries
add_filter( 'woocommerce_available_payment_gateways', function( $gateways ) {
	$country = WCML\MultiCurrency\Geolocation::getUserCountry();
	if ( $country ) {
		// List of country codes to check against
		$country_codes = array('ES', 'FR', 'DE');
		if ( !in_array($country, $country_codes) ) {
			unset( $gateways['woocommerce_payments'] );
		}
	}

	return $gateways;
} );

คุณสามารถเพิ่มโค้ดด้านบนลงในไฟล์ functions.php ในธีมของคุณ

อย่าลืมปรับรหัสประเทศตามความต้องการของคุณ (ในทั้งสองตัวอย่างเราใช้ ‘ES’ สำหรับประเทศสเปน)

ปัญหาที่ทราบแล้วทั้งหมด →