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

Como corrigir o erro de JavaScript ao combinar arquivos no WP Rocket

Time Full Services Time Full Services
Tipo Performance & Velocidade
Nome do erro Erro de JavaScript ao combinar arquivos no WP Rocket EN: WP Rocket combine JavaScript error
Severidade Grave
Descrição A opção Combine JavaScript Files do WP Rocket junta todos os scripts em um único arquivo; quando dois scripts dependem de ordem ou de uma variavel global, a juncao gera erro de JavaScript e quebra menu, carrossel, slider ou formulário. A correção e excluir o arquivo conflitante do combine.

O que é erro ao combinar JavaScript no WP Rocket?

O erro de JavaScript ao combinar arquivos acontece quando a opção Combine JavaScript Files do WP Rocket, na aba File Optimization, junta todos os scripts da página em um único arquivo para reduzir requisicoes HTTP. Em sites que ainda usam HTTP/1 isso e uma boa prática, mas a juncao muda a ordem de execução e o escopo das variaveis. Quando um script depende de outro carregar antes, ou de uma variavel global definida por terceiro, a ordem se perde e o navegador lanca um erro que interrompe o restante do JavaScript da página. O resultado visivel e um recurso interativo (menu mobile, carrossel, slider, lightbox, formulário, contador) que simplesmente para de funcionar, mesmo o site carregando sem mensagem de erro na tela. Por isso a própria WP Rocket trata Combine JavaScript como recurso opcional, com exclusoes automaticas para compatibilidade com temas e plugins.

Como identificar

  • No console do navegador (F12, aba Console) aparece um erro vermelho como ‘Uncaught ReferenceError: jQuery is not defined’ ou ‘Uncaught TypeError: … is not a function’, apontando para o arquivo combinado em /wp-content/cache/min/
  • Menu mobile, carrossel, slider, lightbox ou accordion para de abrir ou de animar depois de ativar a opção Combine JavaScript Files
  • Formulários (Contact Form 7, WPForms, Elementor) não enviam, não validam ou perdem a mascara de campo
  • Ao abrir a mesma página com o parametro ?nowprocket no final da URL, todos os recursos voltam a funcionar — confirmando que a causa esta na otimização do WP Rocket
  • O problema some quando a opção Combine JavaScript Files e desligada e volta quando ela e religada

Como prevenir

  • Se o servidor já entrega o site por HTTP/2 ou HTTP/3, mantenha Combine JavaScript Files desligado: a concatenacao so traz ganho real em HTTP/1, e desligada evita esse tipo de conflito de ordem.
  • Ative uma otimização de cada vez (Minify, depois Combine, depois Delay) e teste a página antes de ativar a próxima, para isolar rapidamente qual delas quebra o site.
  • Não use Combine JavaScript Files e Delay JavaScript Execution ao mesmo tempo; a WP Rocket desativa o Combine automaticamente quando o Delay esta ativo.
  • Após atualizar tema ou plugins pesados em JavaScript, revalide as páginas com recursos interativos, já que arquivos novos podem entrar no combine e reintroduzir o conflito.

Causa

  • A opção Combine JavaScript Files esta ligada na aba File Optimization e juntou dois scripts que dependem de ordem de carregamento, perdendo a sequencia original.
  • Um script combinado usa uma variavel global (por exemplo jQuery ou um objeto definido por outro plugin) que, após a juncao, passa a ser referenciada antes de existir.
  • Um plugin ou widget de terceiro (Elementor, Essential Addons, slider) injeta JavaScript inline que entra no arquivo combinado e quebra ao ser reordenado.
  • A opção Delay JavaScript Execution foi reativada manualmente junto com o Combine, situacao em que a própria WP Rocket recomenda não usar as duas ao mesmo tempo.
  • Um arquivo .js de terceiro (CDN, chat, pixel) foi combinado mesmo sem suporte a concatenacao, gerando conflito de escopo.

Como resolver

  1. Confirme que a causa e o WP Rocket: Abra a página quebrada com o parametro de bypass no final da URL. Ele carrega a página sem nenhuma otimização do WP Rocket. Se o recurso voltar a funcionar, a causa esta confirmada na otimização de arquivos.
    https://seusite.com.br/página-quebrada/?nowprocket
  2. Identifique o arquivo culpado no console do navegador: Abra a página normal (sem o parametro de bypass), pressione F12 e va na aba Console. Clique no erro vermelho para abrir o arquivo combinado e veja o trecho sublinhado. Copie um pedaco único desse código. Em seguida recarregue com o parametro de bypass e use a busca em todos os arquivos das DevTools para descobrir qual arquivo .js original contem aquele trecho. Na aba Network, clique com o botão direito nesse arquivo e use Copy link address para ter o caminho completo.
    Uncaught ReferenceError: jQuery is not defined
    https://seusite.com.br/página-quebrada/?nowprocket
  3. Exclua o arquivo do combine em Excluded JavaScript Files: No painel, abra WP Rocket -> File Optimization -> JavaScript Files. No campo Excluded JavaScript Files, cole o caminho relativo do arquivo identificado, um por linha. Use o caminho a partir de /wp-content/ e, se precisar excluir uma pasta inteira, use o curinga no final. Salve as alterações.
    /wp-content/plugins/nome-do-plugin/assets/js/script.js
    /wp-content/plugins/nome-do-plugin/assets/js/(.*).js
  4. Exclua scripts inline por trecho de texto, se necessário: Se o erro vier de um script inline (código direto no HTML, sem arquivo .js), a exclusão por caminho não funciona. Pegue uma string única desse código inline e cole no campo Excluded Inline JavaScript, que faz correspondencia por texto e não por caminho.
    var elementorFrontendConfig
  5. Limpe o cache e valide a página: Va em WP Rocket -> Dashboard e clique em Clear and preload cache para descartar o arquivo combinado antigo. Recarregue a página afetada com atalho de recarga forte e confirme no console que o erro sumiu e que o menu, carrossel ou formulário voltou a funcionar.
    Ctrl + Shift + R
JavaScript
// Erro tipico no console apos combinar JavaScript no WP Rocket
// Uncaught ReferenceError: jQuery is not defined
//   at https://seusite.com.br/wp-content/cache/min/1/abc123.js

// Trecho do arquivo combinado que falha porque a ordem se perdeu:
jQuery(document).ready(function ($) {
  $('.menu-toggle').on('click', function () {
    $('#site-navigation').toggleClass('is-open');
  });
});
// jQuery ainda nao existe neste ponto do arquivo combinado,
// entao a linha acima dispara o ReferenceError e interrompe
// todo o JavaScript que viria depois na mesma pagina.

Perguntas frequentes

Por que combinar JavaScript quebra meu site no WP Rocket?
Porque a opção junta todos os scripts em um único arquivo e altera a ordem de execução. Quando um script depende de outro carregar antes, ou de uma variavel global definida por terceiro, a referencia acontece antes da hora e o navegador lanca um erro que interrompe o restante do JavaScript da página.
Como eu sei que o problema e o WP Rocket e não outro plugin?
Adicione o parametro de bypass no final da URL da página quebrada e recarregue. Esse parametro carrega a página sem nenhuma otimização do WP Rocket. Se o recurso voltar a funcionar, a causa esta na otimização de arquivos do plugin, e não em outro lugar.
Onde fica o campo para excluir um arquivo JavaScript do combine?
No painel, em WP Rocket -> File Optimization -> JavaScript Files. O campo se chama Excluded JavaScript Files. Você cola ali o caminho relativo do arquivo a partir de /wp-content/, um por linha, e salva.
Preciso usar a URL completa ou o caminho relativo na exclusão?
Use o caminho relativo a partir de /wp-content/, como /wp-content/plugins/nome-do-plugin/assets/js/script.js. Para excluir uma pasta inteira de arquivos, use o curinga no final do caminho. O caminho relativo cobre o arquivo mesmo que o domínio mude.
E se o erro vier de um código JavaScript inline, sem arquivo?
Nesse caso o campo Excluded JavaScript Files não resolve, porque ele trabalha com caminho de arquivo. Pegue uma string única do código inline e cole no campo Excluded Inline JavaScript, que faz a correspondencia por trecho de texto em vez de por caminho.
Devo desligar o combine ou so excluir o arquivo problematico?
Se o servidor entrega o site por HTTP/2 ou HTTP/3, desligar o combine raramente afeta a velocidade e elimina o risco de uma vez. Se você optar por manter o combine, exclua apenas o arquivo conflitante para preservar o ganho nos demais scripts.
Combinar e o mesmo que minificar JavaScript no WP Rocket?
Não. Minificar apenas remove espacos e comentarios de cada arquivo e quase nunca quebra o site. Combinar junta vários arquivos em um so e muda a ordem de execução, que e justamente o que costuma gerar o erro. Por isso a Minify vem ativa por padrão e o Combine e opcional.
Depois de excluir o arquivo o erro continua, e agora?
Limpe o cache em WP Rocket -> Dashboard com Clear and preload cache e recarregue a página com recarga forte, porque o arquivo combinado antigo pode ter ficado em cache. Se persistir, volte ao console: pode haver um segundo arquivo gerando erro que também precisa entrar na lista de exclusão.

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