WPML

Aperçu de l’anomalie

Dans SMS Alert Order Notifications – WooCommerce, les clients qui commandent dans une langue secondaire reçoivent le SMS de commande dans la langue par défaut de votre site.

Solution de contournement

En attendant que SMS Alert corrige le problème, vous pouvez envoyer les SMS de commande dans la langue de la commande :

  1. Allez dans WPMLParamètres, ouvrez Configuration XML personnalisée, ajoutez ceci et enregistrez :
    <wpml-config>
      <admin-texts>
        <key name="smsalert_message">
          <key name="sms_body_*" />
        </key>
      </admin-texts>
    </wpml-config>
  2. Allez dans WPMLTraduction de chaînes et traduisez les modèles de SMS (domaine admin_texts_smsalert_message).
  3. Ajoutez ce code au fichier functions.php de votre thème, ou à l’aide d’une extension d’extraits de code. Il génère le SMS client dans la langue de la commande :
    add_action( 'woocommerce_order_status_changed', function ( $order_id ) {
    	$order = wc_get_order( $order_id );
    	$lang  = $order ? $order->get_meta( 'wpml_language' ) : '';
    	if ( $lang ) {
    		$GLOBALS['sms_alert_wpml_previous_lang'] = apply_filters( 'wpml_current_language', null );
    		do_action( 'wpml_switch_language', $lang );
    	}
    }, 9 );
    
    add_action( 'woocommerce_order_status_changed', function () {
    	if ( isset( $GLOBALS['sms_alert_wpml_previous_lang'] ) ) {
    		do_action( 'wpml_switch_language', $GLOBALS['sms_alert_wpml_previous_lang'] );
    		unset( $GLOBALS['sms_alert_wpml_previous_lang'] );
    	}
    }, 11 );

Toutes les anomalies connues

Besoin d'aide pour ce problème ?

Faites une demande d’assistance et nous l’examinerons avec vous.