WPML
Status
Gelöst
Gemeldet für
WPML Multilingual & Multicurrency for WooCommerce 5.3.0
Gelöst in
WooCommerce Multilingual & Multicurrency 5.3.1
Themen-Tags
WCML

Übersicht über das Problem

Wenn Sie WPML Multilingual & Multicurrency for WooCommerce und dessen Standalone-Modus mit Stripe als Zahlungsgateway verwenden, können beim Versuch, Zahlungen in einer Zweitwährung zu tätigen, Probleme auftreten. Genauer gesagt ist das Stripe-Zahlungsgateway an der Kasse in der Zweitwährung möglicherweise nicht verfügbar, wenn es nicht eingerichtet ist.

Problemumgehung

Bitte stellen Sie sicher, dass Sie ein vollständiges Backup Ihrer Website haben, bevor Sie fortfahren.


  • Öffnen Sie die Datei …/wp-content/plugins/woocommerce-multilingual/classes/multi-currency/payment-gateways/class-wcml-payment-gateway-stripe.php.

  • Suchen Sie nach Zeile 78.

  • Ändern Sie:
    		if ( $gateway_settings && isset( $gateway_settings[ $client_currency ] ) ) {
    			$gateway_setting = $gateway_settings[ $client_currency ];
    			if ( isset( $gateway_setting['publishable_key'] ) && isset( $gateway_setting['secret_key'] ) ) {
    				$settings['publishable_key'] = $gateway_setting['publishable_key'];
    				$settings['secret_key']      = $gateway_setting['secret_key'];
    			}
    			if ( isset( $gateway_setting['test_publishable_key'] ) && isset( $gateway_setting['test_secret_key'] ) ) {
    				$settings['test_publishable_key'] = $gateway_setting['test_publishable_key'];
    				$settings['test_secret_key']      = $gateway_setting['test_secret_key'];
    			}
    		}

  • in:
    		if ( $gateway_settings && isset( $gateway_settings[ $client_currency ] ) ) {
    			$gateway_setting = $gateway_settings[ $client_currency ];
    			if ( ! empty( $gateway_setting['publishable_key'] ) && ! empty( $gateway_setting['secret_key'] ) ) {
    				$settings['publishable_key'] = $gateway_setting['publishable_key'];
    				$settings['secret_key']      = $gateway_setting['secret_key'];
    			}
    			if ( ! empty( $gateway_setting['test_publishable_key'] ) && ! empty( $gateway_setting['test_secret_key'] ) ) {
    				$settings['test_publishable_key'] = $gateway_setting['test_publishable_key'];
    				$settings['test_secret_key']      = $gateway_setting['test_secret_key'];
    			}
    		}

Alle bekannten Probleme →