Como corrigir o erro de JavaScript ao combinar arquivos no WP Rocket
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
- 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 - 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 - 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 - 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 - 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
// 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.














