- Status
- Resolvido
- Plugin/tema relacionado
- Germanized for WooCommerce
- Tags de tópico
- Compatibility, WCML
Visão geral do problema
Ao usar o Germanized for WooCommerce com o WPML, você pode encontrar o seguinte problema: as strings associadas às caixas de seleção legais, como o rótulo e a mensagem de erro, não aparecem na interface de Tradução de Strings do WPML e não podem ser traduzidas.
Solução alternativa
Por favor, certifique-se de ter um backup completo do seu site antes de prosseguir.
- Adicione o seguinte código ao arquivo functions.php do seu 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; }); }
Essa solução alternativa garante que as strings da caixa de seleção sejam armazenadas por idioma. Depois de adicionar:
- Vá para “WooCommerce > Configurações > Germanized > Legal checkboxes > (Sua caixa de seleção)” no seu idioma padrão, faça uma pequena edição nos rótulos e salve.
- Em seguida, mude para o idioma secundário usando o seletor de idiomas na barra superior do painel de administração, traduza os rótulos e salve.