WPML
Статус
Открыто
Заявлено для
WPML Multilingual & Multicurrency for WooCommerce 5.3.5
Связанный плагин/тема
WooCommerce Payments
Теги темы
Compatibility

Обзор проблемы

В настоящее время невозможно сохранить изменения параметра Доступность в странах в Ваших настройках WooPayments при использовании WPML Multilingual & Multicurrency for WooCommerce.

Эта проблема аналогична той, о которой сообщалось для 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» для Испании).

Все известные проблемы →