WPML
Status
Resolvido

Visão geral do problema

Se você estiver usando um construtor de páginas no seu site, pode notar que, se adicionar alguns emojis em um bloco de conteúdo, esse bloco não estará disponível para tradução no Editor de tradução avançado ou no Editor de tradução clássico.

Solução alternativa

Esse problema ocorre devido a um conflito de collation de tabela. Se o seu servidor suportar o collation utf8mb4_general_ci, você pode seguir este procedimento após fazer um backup completo do seu site:


  1. Abra o arquivo functions.php do seu tema.

  2. Adicione este código:
    // Notice admin_init - will only run in backend
    add_action('admin_init', function() {
    	require_once(ABSPATH.'/wp-admin/includes/upgrade.php');
    	global $wpdb;
    	$mytables=$wpdb->get_results("SHOW TABLES");
    	foreach ($mytables as $mytable)
    	{
    	    foreach ($mytable as $t) 
    	    {       
    	        maybe_convert_table_to_utf8mb4( $t );
    	    }
    	}
    	
    });


  3. Visite qualquer página no back-end do seu site.

  4. Remova o código.

O collation das tabelas do seu banco de dados deve ser utf8mb4_general_ci agora, e o conteúdo estará disponível para tradução.

Caso o banco de dados do seu site esteja usando o collation latin1, você pode aplicar a seguinte solução alternativa em vez disso:


  1. Faça um backup completo do seu site antes de prosseguir.

  2. Vá para: https://github.com/interconnectit/Search-Replace-DB.

  3. Baixe o arquivo ZIP do projeto e descompacte-o.

  4. Faça o upload da pasta descompactada para a sua instalação do WordPress usando um cliente FTP.

  5. Visite a pasta – ex.: http://example.com/Search-Replace-DB-master/

  6. Preencha o nome do banco de dados, servidor, usuário e senha. Você pode obter esses valores no arquivo wp-config.php.

  7. Clique e teste a conexão.

  8. Vá até o final da página e clique no botão “Convert to UTF8MB4”.

  9. Aguarde a conclusão do processo.

  10. Quando isso for concluído, clique no botão “Delete me”.

 

Todos os problemas conhecidos →