- ステータス
- 解決済み
- 報告対象
- WPML Multilingual & Multicurrency for WooCommerce 4.12.6
- 解決されたバージョン
- WooCommerce Multilingual & Multicurrency 5.4.0
- 関連するプラグイン/テーマ
- WooCommerce Stripe Payment Gateway
問題の概要
現在、WPML Multilingual & Multicurrency for WooCommerceおよびWooCommerce Stripe Payment Gatewayを使用している場合、Stripe設定の「Country availability」の変更を保存することはできません。
弊社の開発チームはこの状況を認識しています。Stripeチームに連絡を取り、現在も返答を待っています。
回避策
当面の間、以下のいずれかの解決策をご検討ください。
1) Stripeを単一の国(例:スペイン)に制限する場合は、以下のコードを使用できます。
// Limit Stripe to Spain.
add_filter( 'woocommerce_available_payment_gateways', function( $gateways ) {
$country = WCML\\MultiCurrency\\Geolocation::getUserCountry();
if ( $country ) {
if ( 'ES' !== $country ) {
unset( $gateways['stripe'] );
}
}
return $gateways;
} );2) 一方、特定の国を除外する場合は、以下のバリエーションを使用できます。
// Limit Stripe to all countries except Spain.
add_filter( 'woocommerce_available_payment_gateways', function( $gateways ) {
$country = WCML\\MultiCurrency\\Geolocation::getUserCountry();
if ( $country ) {
if ( 'ES' === $country ) {
unset( $gateways['stripe'] );
}
}
return $gateways;
} );上記のコードは、テーマのfunctions.phpファイルに追加できます。
必要に応じて国コードを調整してください(両方の例でスペインを示す「ES」を使用しています)。