WPML
Status
Resolvido
Relatado para
WPML Multilingual CMS 3.1.9.7
Resolvido em
3.2

Visão geral do problema

As páginas ficam inutilizáveis ou muito lentas para carregar.

Se você puder monitorar quais consultas são executadas, encontrará referências a esta:

SELECT meta_key

FROM wp_postmeta

GROUP BY meta_key

ORDER BY meta_key

LIMIT 1000;

Solução alternativa

Você precisa fazer uma pequena edição em um arquivo do WPML.

Você pode usar um cliente FTP para editar este arquivo.


  1. Abra wp-content/plugins/sitepress-multilingual-cms/inc/translation-management/translation-management.class.php

  2. Vá para a linha 102, onde você deve ver esta linha: $this->initial_custom_field_translate_states();

  3. Comente essa linha, adicionando “//” no início dela.

  4. Salve o arquivo

Depois de fazer isso, nada deve mudar (exceto o desempenho, que pode melhorar consideravelmente). Não há efeitos colaterais para esta alteração. Você está comentando um código que costumava fazer algo, mas não é mais necessário.

Notamos um pico de consultas sendo executadas tanto no back-end quanto no front-end. Isso afeta apenas sites muito, muito grandes com milhões de entradas postmeta (como temos em nossos sites).

Esta consulta vem de uma lógica antiga, que não está mais fazendo nada de importante. Vamos removê-la totalmente no WPML 3.2.

Se você notar um grande pico no carregamento das páginas, este pode ser o seu caso.

No entanto, observe que, como o WordPress 4.2 mudou o conjunto de caracteres para bytes UTF-8, muitos outros plugins e o tema podem apresentar problemas de desempenho. Este upgrade pode alterar a indexação (como aconteceu em nosso servidor) e pode ter uma interação inesperada com o MySQL (como nós experimentamos). Isso faz com que coisas que tinham um impacto muito baixo de repente se tornem críticas.

Portanto, nosso conselho é ativar o log de consultas lentas do MySQL e verificar quais consultas estão realmente afetando o desempenho do seu servidor.

Todos os problemas conhecidos →