- Status
- Resolvido
- Tipo
- Bug
- Relatado para
- WPML Multilingual CMS 4.4.10
- Resolvido em
- WPML 4.6.7
Visão geral do problema
Uma tela em branco aparece e, após ativar o modo de depuração, o seguinte erro aparece em algumas configurações:
PHP Fatal error: Uncaught InvalidArgumentException: element_id and type do not match in wp-contentpluginssitepress-multilingual-cmsclassescore-abstract-classesclass-wpml-set-language.php on line xx
Esses tipos de exceções ficavam ocultos para o usuário na versão anterior. No longo prazo, no entanto, eles podem levar à corrupção do banco de dados e decidimos não ocultá-los mais. A partir do WPML 3.3.5, essas exceções são lançadas para permitir que os usuários identifiquem o problema imediatamente. Isso tornará a correção de problemas com configurações corrompidas muito mais fácil, já que eles podem ser detectados em seu estágio inicial.
Os problemas podem parecer diferentes em instalações diferentes. O problema pode:
- Aparecer nas páginas do painel de administração do WPML.
- Tornar impossível acessar a página Plugins.
- Ocorrer apenas na ativação do WPML (ou de seus complementos).
- Ocorrer quando os posts estão sendo salvos.
Uma tela em branco aparece em todos os casos, com o erro aparecendo com o modo de depuração ativado.
Solução alternativa
Por favor, faça um backup completo do seu site antes de prosseguir.
Se você ainda conseguir acessar o seu Painel:
- Vá para WPML → Suporte.
- Abra Corrigir dados de idioma (no WPML 5.0 e versões posteriores, esta ferramenta vem com o plugin WPML Troubleshooting, instalado em WPML → Activate & Update). O botão Remover entradas fantasmas da próxima etapa está em Manutenção de banco de dados e strings.
- Clique no botão Corrigir atribuição de tipo de post para traduções.
- Pode ser necessário clicar no botão Remover entradas fantasmas das tabelas de tradução.
Se você não conseguir acessar ou se isso não ajudar:
- Acesse seu banco de dados.
- Abra a tabela wp_icl_translations.
- Pesquise pelo element_id que está gerando o erro.
- Exclua a linha.
Pode ser necessário repetir o fluxo de trabalho várias vezes até que o problema seja corrigido.