🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o conflito de JavaScript entre Ultimate Addons e WP Rocket

Time Full Services Time Full Services
Tipo Page Builders
Nome do erro Conflito de JavaScript entre Ultimate Addons e WP Rocket EN: Ultimate Addons for Elementor JavaScript conflict with WP Rocket
Severidade Grave
Descrição Widgets interativos do Ultimate Addons for Elementor param de funcionar no frontend quando o WP Rocket segura o uael-frontend-script.js pelo Delay JavaScript Execution ou o junta com outros arquivos pelo Combine JavaScript. A correção e excluir o script do plugin dessas otimizacoes e limpar o cache.

O que é conflito de JavaScript entre Ultimate Addons e WP Rocket?

O conflito de JavaScript entre o Ultimate Addons for Elementor (UAE) e o WP Rocket acontece quando as otimizacoes de JavaScript do WP Rocket interferem na ordem de carregamento e na execução do script de frontend do plugin. O UAE registra o handle uael-frontend-script e injeta um objeto de configuração chamado UAELParams (via wp_localize_script) do qual os widgets dependem para inicializar. Widgets interativos como Modal Popup, Countdown Timer, Nav Menu, Tabs e Before/After Slider so funcionam quando esse script executa na ordem certa, depois do jQuery e com o UAELParams já definido. Quando o WP Rocket segura, combina ou adia esse script, o visitante recebe a página com o widget renderizado mas morto, enquanto o editor do Elementor continua mostrando tudo certo.

Como identificar

  • Widgets interativos do Ultimate Addons (Modal Popup, Countdown Timer, Nav Menu, Tabs, Before/After Slider) aparecem na página mas não respondem ao clique ou ao toque no frontend, enquanto o editor do Elementor mostra o widget funcionando
  • No console do navegador aparece o erro ‘uael is not defined’, ‘UAELParams is not defined’ ou ‘Cannot read properties of undefined’ apontando para o uael-frontend-script.js
  • O menu do Nav Menu não abre no mobile, o Countdown Timer congela em zero e o Modal Popup não dispara, mesmo com o HTML do widget presente no código-fonte
  • Os widgets voltam a funcionar logo após limpar o cache do WP Rocket e param de novo na próxima visita, quando a página otimizada e servida de novo
  • O problema desaparece com o WP Rocket desativado ou com o Safe Mode ligado, e volta ao reativar as otimizacoes de JavaScript
  • No código-fonte da página o uael-frontend-script.js aparece com o atributo type=rocket-loader ou data-rocket-defer, em vez de carregar normalmente
Antes de começar: Faca backup do banco antes de mexer nas otimizacoes. As configurações do WP Rocket ficam na option wp_rocket_settings e um backup permite reverter para o estado anterior caso a regeneracao do Used CSS piore o layout dos widgets.

Como prevenir

  • Mantenha o handle uael-frontend e os prefixos uael fixos nas exclusoes de Delay, Combine e Defer do WP Rocket para que novas geracoes de cache nunca segurem o script dos widgets interativos
  • Sempre que atualizar o Ultimate Addons ou o Elementor, regenere os assets do plugin e so depois limpe o cache do WP Rocket, nessa ordem, para evitar caminho de script desatualizado
  • Após qualquer mudanca nas otimizacoes, teste o frontend em uma janela anonima com cache limpo e abra o console para confirmar que não ha erro uael is not defined antes do deploy
  • 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 de JavaScript

Causa

  • A opção Delay JavaScript Execution (aba File Optimization) segura o uael-frontend-script.js até a primeira interacao do usuário, e widgets que inicializam no carregamento da página, como Countdown Timer e Nav Menu, nunca recebem o evento de inicializacao.
  • A opção Combine JavaScript files junta o uael-frontend-script.js com outros scripts e quebra a ordem em relacao ao wp_localize_script, deixando o objeto UAELParams indefinido e gerando 'uael is not defined' no console.
  • A opção Load JavaScript Deferred adia o jQuery do qual o uael-frontend-script.js depende, e o script do UAE executa antes da dependencia estar pronta, travando a inicializacao dos widgets.
  • A opção Remove Unused CSS classifica o CSS condicional por widget do Ultimate Addons como não utilizado e o remove do inline wpr-usedcss, deixando o widget sem estilo além de sem comportamento.
  • O cache foi gerado antes de o Ultimate Addons regenerar seus assets após uma atualização do plugin ou do Elementor, servindo uma versão da página que aponta para um uael-frontend-script.js antigo que já não existe no servidor.
  • A integração do Cloudflare no WP Rocket aplica o Rocket Loader sobre o uael-frontend-script.js, reordenando a execução do script e impedindo que o UAELParams carregue antes do widget.

Como resolver

  1. Confirme que a causa e o WP Rocket: No painel, abra o Dashboard do WP Rocket e force a limpeza e a pre-carga do cache. Se os widgets do Ultimate Addons voltarem a responder e quebrarem de novo na próxima visita, o conflito esta nas otimizacoes de JavaScript, e não no plugin em si.
    Settings -> WP Rocket -> Dashboard -> Clear and preload cache
  2. Exclua o script do Ultimate Addons do Delay JavaScript Execution: Abra a aba de otimização de arquivos, va até a área de Delay JavaScript Execution e adicione o caminho e o handle do script do plugin no campo de exclusão, um por linha. Salvar limpa o cache e faz o script carregar normalmente, e os widgets que inicializam no load voltam a funcionar.
    Settings -> WP Rocket -> File Optimization -> Delay JavaScript Execution -> Excluded files
    /uael/assets/js/uael-frontend.js
    uael-frontend-script
    UAELParams
  3. Exclua o script do Combine e do Defer: Ainda em File Optimization, adicione o mesmo script na lista de exclusão do Combine JavaScript files e do Load JavaScript Deferred. Isso preserva a ordem em relacao ao jQuery e ao objeto de configuração injetado pelo wp_localize_script, e elimina o erro uael is not defined no console.
    Settings -> WP Rocket -> File Optimization -> Combine JavaScript files -> Excluded JavaScript files
    uael-frontend
    Settings -> WP Rocket -> File Optimization -> Load JavaScript deferred -> Excluded JavaScript files
    uael-frontend
  4. Proteja o CSS condicional do Ultimate Addons no Safelist: Na área de Optimize CSS delivery, cole no campo de CSS Safelist os prefixos de classe do plugin, um por linha, para que o Remove Unused CSS nunca remova o estilo dos widgets ao regenerar o Used CSS. Salvar regenera o CSS preservando essas regras.
    Settings -> WP Rocket -> File Optimization -> Optimize CSS delivery -> CSS Safelist
    uael
    .uael-
    .elementor-widget-uael
  5. Regenere os assets do plugin e limpe o cache na ordem certa: Va nas configurações do Ultimate Addons e use a regeneracao de arquivos para reconstruir os assets de frontend, depois volte ao WP Rocket e limpe o cache. Recompilar no plugin antes de limpar o cache evita que o WP Rocket guarde um caminho de script desatualizado.
    Elementor -> Settings -> Ultimate Addons -> Regenerate Assets / Files
    Settings -> WP Rocket -> Dashboard -> Clear and preload cache
  6. Se usar Cloudflare, desligue o Rocket Loader para o script: Quando a integração do Cloudflare estiver ativa, o Rocket Loader pode reordenar o uael-frontend-script.js. Crie uma Page Rule no Cloudflare desligando o Rocket Loader na área do site afetada, ou desative o Rocket Loader globalmente em Speed -> Optimization, e limpe o cache do Cloudflare.
    Cloudflare -> Speed -> Optimization -> Rocket Loader -> Off
    Cloudflare -> Caching -> Configuration -> Purge Everything
HTML
/uael/assets/js/uael-frontend.js
uael-frontend-script
uael-frontend
UAELParams
uael
.uael-
.elementor-widget-uael

Perguntas frequentes

Por que os widgets do Ultimate Addons funcionam no editor do Elementor mas quebram no frontend?
O editor carrega o uael-frontend-script.js direto do plugin, sem passar pelas otimizacoes do WP Rocket. O frontend serve a versão em cache, onde o Delay segurou o script e o Combine quebrou a ordem do UAELParams. Por isso a quebra aparece so para o visitante, e não para quem edita.
O que significa o erro uael is not defined no console depois de ativar o WP Rocket?
Esse erro aparece quando o Combine ou o Delay separam o uael-frontend-script.js do objeto UAELParams que o plugin injeta com wp_localize_script. O widget tenta usar uma variavel que ainda não existe e a inicializacao para. Excluir o script do Combine e do Delay resolve.
Preciso desativar todo o WP Rocket para os widgets do Ultimate Addons voltarem?
Não. Na maioria dos casos basta excluir o uael-frontend do Delay JavaScript Execution e do Combine JavaScript files. Assim você mantem o cache e o ganho de velocidade do WP Rocket sem quebrar os widgets interativos do plugin.
Quais widgets do Ultimate Addons mais sofrem com o conflito de JavaScript do WP Rocket?
Os que dependem de script no carregamento, como Modal Popup, Countdown Timer, Nav Menu, Tabs, Table of Contents e Before/After Slider. Eles renderizam o HTML mas não recebem o evento de inicializacao quando o uael-frontend-script.js e segurado pelo Delay.
O que devo colocar no campo de exclusão do Delay JavaScript do WP Rocket?
Adicione o caminho do arquivo do plugin e o handle, uma entrada por linha. O caminho costuma terminar em uael-frontend.js dentro da pasta do plugin, e o handle e uael-frontend-script. Também ajuda incluir o objeto UAELParams para garantir que a configuração carregue antes do widget.
Os widgets voltam ao limpar o cache e quebram de novo logo depois, por que?
Ao limpar o cache o WP Rocket serve a página sem otimização por um instante e o script carrega normal. Na próxima visita a versão otimizada e regenerada e o Delay segura o uael-frontend-script.js de novo. So a exclusão permanente do script resolve, e não a limpeza repetida.
O Rocket Loader do Cloudflare também quebra os widgets do Ultimate Addons?
Sim. Quando a integração do Cloudflare esta ativa, o Rocket Loader reordena a execução do uael-frontend-script.js e o UAELParams pode não estar pronto na inicializacao. Desligue o Rocket Loader para o script ou para a área afetada e limpe o cache do Cloudflare.
Como confirmo que o conflito e do WP Rocket e não do próprio Ultimate Addons?
Ative o Safe Mode do WP Rocket ou desative o plugin em uma página de teste e recarregue em janela anonima com cache limpo. Se os widgets voltarem a responder, a causa esta nas otimizacoes de JavaScript do WP Rocket, e a correção e excluir o script do plugin do Delay e do Combine.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes