WPML
Statut
Résolu
Extension/thème associé
Germanized for WooCommerce
Étiquettes de sujet
Compatibility, WCML

Aperçu de l’anomalie

Lorsque vous utilisez Germanized for WooCommerce avec WPML, vous pouvez rencontrer le problème suivant : les chaînes de texte associées aux cases à cocher légales, telles que le libellé et le message d’erreur, n’apparaissent pas dans l’interface WPML Traduction de chaînes et ne peuvent pas être traduites.

Solution de contournement

Assurez-vous d’avoir une sauvegarde complète de votre site avant de continuer.


  • Ajoutez le code suivant au fichier functions.php de votre thème.
    // WPML Workaround for compsupp-8083
    if ( class_exists('Sitepress') ) { 
    
    	add_action( 'update_option_woocommerce_gzd_legal_checkboxes_settings', function( $old_value, $new_value ) {
    		$current_lang = apply_filters( 'wpml_current_language', null );
    		update_option( 'woocommerce_gzd_legal_checkboxes_settings_' . $current_lang, $new_value );
    	}, 10, 2 );
    
    	add_filter( 'pre_option_woocommerce_gzd_legal_checkboxes_settings', function( $default ) {
    
    		$current_lang = apply_filters( 'wpml_current_language', null );
    		$translated = get_option( 'woocommerce_gzd_legal_checkboxes_settings_' . $current_lang );
    
    		return is_array( $translated ) ? $translated : $default;
    	});
    	
    }
            


Cette solution de contournement garantit que les chaînes de texte des cases à cocher sont stockées par langue. Une fois le code ajouté :

  • Accédez à « WooCommerce > Paramètres > Germanized > Legal checkboxes > (Votre case à cocher) » dans votre langue par défaut, apportez une petite modification aux étiquettes et enregistrez.

  • Passez ensuite à la langue secondaire à l’aide du sélecteur de langue dans la barre d’administration supérieure, traduisez les étiquettes et enregistrez.

Toutes les anomalies connues →