- 상태
- 미해결
- 보고된 제품
- WPML Multilingual & Multicurrency for WooCommerce 5.3.5
- 관련 플러그인/테마
- WooCommerce Payments
- 주제 태그
- Compatibility
문제 개요
현재 WPML Multilingual & Multicurrency for WooCommerce를 사용할 때 WooPayments 설정의 국가 사용 가능 여부에 대한 변경 사항을 저장할 수 없습니다.
이 문제는 WooCommerce Stripe Payment Gateway에 대해 보고된 문제와 유사합니다.
임시 해결 방법
그동안 다음 해결 방법 중 하나를 고려할 수 있습니다.
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’를 사용합니다).