WPML
Stato
Risolto
Plugin/tema correlato
Germanized for WooCommerce
Tag dell’argomento
Compatibility, WCML

Panoramica del problema

Quando utilizzi Germanized for WooCommerce con WPML, potresti riscontrare il seguente problema: le stringhe associate ai checkbox legali, come l’etichetta e il messaggio di errore, non appaiono nell’interfaccia di WPML Traduzione stringhe e non possono essere tradotte.

Soluzione alternativa

Assicurati di avere un backup completo del sito prima di procedere.


  • Aggiungi il seguente codice al file functions.php del tuo tema.
    // 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;
    	});
    	
    }
            


Questa soluzione alternativa garantisce che le stringhe delle caselle di controllo vengano memorizzate per lingua. Una volta aggiunta:

  • Vai su “WooCommerce > Impostazioni > Germanized > Legal checkboxes > (La tua casella di controllo)” nella tua lingua predefinita, apporta una piccola modifica alle etichette e salva.

  • Quindi passa alla lingua secondaria utilizzando il selettore di lingua nella barra di amministrazione superiore, traduci le etichette e salva.

Tutti i problemi noti →