Como corrigir widgets do Essential Addons quebrados pelo cache do WP Rocket
O que é conflito do Essential Addons com o WP Rocket?
O conflito entre o Essential Addons e o WP Rocket acontece quando as otimizacoes de CSS e JavaScript do WP Rocket processam os arquivos que o Essential Addons gera por página. O plugin compila o estilo e o script de cada widget em arquivos próprios na pasta de uploads e os enfileira com handles como eael-general e essential-addons-elementor. Quando o Remove Unused CSS classifica esse CSS como não utilizado e o Delay JavaScript Execution segura o eael-general.js, o visitante recebe a página sem o estilo e sem a lógica dos widgets, enquanto o editor do Elementor continua mostrando tudo certo.
Como identificar
- Widgets do Essential Addons (Post Grid, Advanced Accordion, Data Table, Testimonials) aparecem sem estilo, empilhados ou em branco no frontend, enquanto o editor do Elementor mostra o widget correto
- Abas, acordeoes, filtros e carrosseis do Essential Addons param de responder ao clique porque o script eael-general.js não executa
- O layout volta ao normal logo após limpar o cache do WP Rocket e quebra de novo em poucos minutos, quando o Used CSS e regenerado
- No código-fonte da página aparece a tag inline ‘style id=wpr-usedcss’ e as folhas do plugin (eael, essential-addons-elementor) somem ou viram preload
- No console do navegador aparece o erro ‘eael is not defined’ ou ‘localize is not defined’ porque o objeto de configuração do plugin não carregou antes do widget
- O problema desaparece com o WP Rocket desativado e volta ao reativar o plugin
Como prevenir
- Mantenha os prefixos do Essential Addons (eael, essential-addons-elementor, .eael-) fixos no CSS Safelist do WP Rocket para que novas regeneracoes do Used CSS nunca removam o estilo dos widgets
- Sempre que ativar ou desativar um widget em Save Default Settings, regenere os assets do plugin e so depois limpe o cache do WP Rocket, nessa ordem
- Após atualizar o Essential Addons ou o WP Rocket, teste o frontend em uma janela anonima com cache limpo antes de considerar o deploy concluido
- Ative o Safe Mode do WP Rocket em uma página de teste para confirmar que a quebra vem do cache antes de alterar as otimizacoes
Causa
- A opção Remove Unused CSS (aba File Optimization) classifica o CSS por página do Essential Addons como não utilizado e o remove ao gerar o inline 'style id=wpr-usedcss', deixando os widgets sem estilo.
- A opção Delay JavaScript Execution segura o eael-general.js e o eael scripts até a primeira interacao do usuário, e widgets interativos como Advanced Accordion e Post Grid filtravel não inicializam.
- A opção Combine JavaScript files junta o eael-general.js com outros scripts e o objeto localizado eael_translate_text fica indefinido, gerando 'eael is not defined' no console.
- A opção Load JavaScript Deferred adia o jQuery do qual o eael-general.js depende, e o script do plugin executa antes da dependencia, travando o widget.
- O cache do WP Rocket foi gerado antes do Essential Addons regenerar seus assets após ativar um novo widget em Save Default Settings, servindo uma versão da página sem o CSS do widget recem-ativado.
- A opção Minify or Combine CSS files quebra os caminhos relativos de fontes e icones dentro do CSS do Essential Addons, deixando icones de widgets como Pricing Table e Testimonials sem renderizar.
Como resolver
- Confirme que a causa e o WP Rocket: No painel, va em WP Rocket -> Dashboard e clique em Clear and preload cache. Se os widgets do Essential Addons voltarem ao normal e quebrarem de novo em poucos minutos, o conflito esta nas otimizacoes de CSS e JavaScript, e não no Essential Addons em si.
Settings -> WP Rocket -> Dashboard -> Clear and preload cache - Adicione os caminhos do Essential Addons ao CSS Safelist: Abra a aba de otimização de CSS, role até a área de Optimize CSS delivery e cole no campo CSS Safelist, uma por linha, as folhas e prefixos de classe do plugin. Salvar limpa e regenera o Used CSS preservando essas regras, e os widgets voltam a ter estilo.
Settings -> WP Rocket -> File Optimization -> Optimize CSS delivery -> CSS Safelist eael essential-addons-elementor eael-general .eael- - Exclua o script do Essential Addons do Delay e do Combine: Ainda em File Optimization, adicione o script do plugin na lista de exclusão do Delay JavaScript Execution e nos arquivos excluidos do Combine, para que o objeto de configuração do plugin carregue antes do widget e abas, acordeoes e filtros voltem a responder.
Settings -> WP Rocket -> File Optimization -> Delay JavaScript Execution -> Excluded files /essential-addons-elementor/assets/front-end/js/view/general.min.js eael-general eael_translate_text - Regenere os assets do Essential Addons e limpe o cache: Va nas configurações do Essential Addons e use a regeneracao de assets para reconstruir os arquivos por página do plugin, depois volte ao WP Rocket e limpe o cache. Recompilar no plugin antes de limpar o cache evita que o WP Rocket guarde um CSS desatualizado.
Essential Addons -> Settings -> Save Default Settings (regenera os assets) Settings -> WP Rocket -> Dashboard -> Clear and preload cache - Se persistir, isole a otimização culpada: Desative uma de cada vez Combine JavaScript files, Load JavaScript Deferred e Remove Unused CSS, recarregando o frontend em janela anonima com cache limpo a cada teste, até identificar qual opção quebra o widget e manter so essa desligada.
Settings -> WP Rocket -> File Optimization (desligar uma opção por vez)
eael
essential-addons-elementor
eael-general
eael-tooltip
eael-image-comparison
.eael-
/essential-addons-elementor/assets/front-end/js/view/general.min.js
eael_translate_text














