- 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.
- Abra
wp-content/plugins/sitepress-multilingual-cms/inc/translation-management/translation-management.class.php - Vá para a linha 102, onde você deve ver esta linha:
$this->initial_custom_field_translate_states(); - Comente essa linha, adicionando “//” no início dela.
- 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.