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 :
- 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> - Allez dans WPMLTraduction de chaînes et traduisez les modèles de SMS (domaine admin_texts_smsalert_message).
- Ajoutez ce code au fichier
functions.phpde 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 );