WPML
Status
Aberto
Plugin/tema relacionado
Filter Everything PRO
Tags de tópico
Compatibility

Visão geral do problema

Os usuários do plugin Filter Everything combinado com o Advanced Custom Fields podem enfrentar problemas em que os valores dos campos do ACF usados nos filtros não são traduzidos no frontend. Esse problema ocorre apesar de os campos estarem traduzidos na WPML Tradução de Strings.

Solução alternativa

Certifique-se de ter um backup completo do seu site antes de prosseguir.


  • Adicione o seguinte código ao arquivo functions.php do tema:
    // WPML Workaround for compsupp-7581
    add_filter('wpc_terms_before_display', 'wpml_compsupp7581_filter_wpc_filter_terms', 10, 4 ); 
    
    function wpml_compsupp7581_filter_wpc_filter_terms($terms, $filter, $set, $urlManager) {
    	
    	if ( class_exists('Sitepress') ) {
    		foreach ($terms as &$term ) {
    			$label = $term->name;
    			$textdomain = 'WordPress';
    			$string_name = 'WPC Filter Label: '.substr($label, 0, 40);
    
    			if ( apply_filters('wpml_default_language', NULL ) == apply_filters( 'wpml_current_language', NULL )) {
    				do_action( 'wpml_register_single_string', $textdomain, $string_name, $label );
    			}	
    			// Apply the translation to the string
    			$term->name = apply_filters('wpml_translate_single_string', $label , $textdomain, $string_name);
    
    		}
    	}
    	return $terms;
    }

  • Acesse a página com o problema no idioma original. Essa ação registrará a string.

  • Vá para a página WPML > Tradução de Strings e traduza a string. Ela deve estar em WordPress textdomain.

Todos os problemas conhecidos →