WPML
Status
Aguardando o autor
Plugin/tema relacionado
Soho Hotel

Visão geral do problema

Ao usar o tema Soho Hotel com o WPML, o Preço de Temporada aplicado a uma Acomodação no idioma padrão não é copiado para a Acomodação traduzida.

Solução alternativa

Como uma solução alternativa para corrigir este problema, siga estes passos:

  1. Vá para WPMLConfiguraçõesTradução de campos personalizados e defina o campo personalizado shb_pricing como Copiar.
  2. Adicione este trecho de código no arquivo functions.php do tema:
     
    add_action( 'wpml_after_copy_custom_field', function($post_id_from, $post_id_to, $meta_key){
        if ($meta_key == 'shb_pricing') {
            $translated_lang = apply_filters( 'wpml_post_language_details', '', $post_id_to );
            $translated_lang = isset($translated_lang['language_code']) ? $translated_lang['language_code'] : ''; 
            
    	$original_value = get_post_meta($post_id_from, 'shb_pricing', true);
    	$translated_value = $original_value;
    	
    	if (!empty($original_value) && is_array($original_value)) {
    	    foreach ($original_value as $key => $value) {
    		$session_id = intval(substr($key, 7));
    		if ( !empty($session_id) ) {
    		    $session_id = apply_filters( 'wpml_object_id', $session_id, 'shb_season', false, $translated_lang );
    		    $translated_value['season_' . $session_id] = $translated_value[$key];
    		    unset($translated_value[$key]);
    		}
    	    }
    	    
    	    update_post_meta($post_id_to, 'shb_pricing', $translated_value);
    	}
        }
    }, 10, 3);
  3. Atualize a Acomodação original e sua tradução.

Próximos passos

O autor do Soho Hotel precisará resolver este problema, pois está relacionado à forma como o tema foi codificado. Entramos em contato várias vezes, mas ainda não recebemos a cooperação do autor.

Se você estiver enfrentando este problema e quiser incentivar o autor a resolvê-lo, entre em contato com ele em seu fórum de suporte privado.

Todos os problemas conhecidos →