WPML

Panoramica del problema

In SMS Alert Order Notifications – WooCommerce, i clienti che ordinano in una lingua secondaria ricevono l’SMS dell’ordine nella lingua predefinita del tuo sito.

Soluzione alternativa

Finché SMS Alert non risolverà il problema, puoi inviare gli SMS degli ordini nella lingua dell’ordine:

  1. Vai su WPMLImpostazioni, apri Configurazione XML personalizzata, aggiungi questo e salva:
    <wpml-config>
      <admin-texts>
        <key name="smsalert_message">
          <key name="sms_body_*" />
        </key>
      </admin-texts>
    </wpml-config>
  2. Vai su WPMLTraduzione stringhe e traduci i template degli SMS (dominio admin_texts_smsalert_message).
  3. Aggiungi questo codice al file functions.php del tuo tema, oppure con un plugin per snippet di codice. Genera l’SMS per il cliente nella lingua dell’ordine:
    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 );

Tutti i problemi noti

Hai bisogno di aiuto con questo problema?

Fai una richiesta di supporto e la esamineremo con te.