Como corrigir o Delay JavaScript do WP Rocket que quebra funções do site
Perguntas frequentes
Por que o WP Rocket Delay JavaScript quebra meu site?
Porque o delay adia TODO o JavaScript da página até a primeira interação. Se um slider, menu ou formulário depende de um script que precisa rodar no carregamento, esse elemento fica inerte até o visitante mexer na página. Não é um bug: é o efeito do delay sobre um script que não suporta ser adiado, e a correção é excluir só esse script.
Como saber qual script está sendo quebrado pelo delay?
Abra a página problemática com as Ferramentas do Desenvolvedor do navegador na aba Console (tecla F12) e recarregue sem interagir. O erro, geralmente 'Uncaught ReferenceError: jQuery is not defined' ou algo do tipo, aponta o arquivo .js que falhou. O caminho do arquivo identifica o plugin ou tema que você precisa excluir do delay.
Preciso desativar o Delay JavaScript inteiro para resolver?
Não. Desativar o delay todo joga fora o ganho de performance. O correto é manter a opção ativa e excluir apenas o script que quebra, no campo 'Excluded JavaScript Files' da aba File Optimization. Assim o resto da página continua otimizado e só o elemento sensível roda imediatamente.
Qual o formato certo para excluir um script do delay no WP Rocket?
O campo 'Excluded JavaScript Files' aceita a URL completa do arquivo ou apenas uma palavra-chave contida no caminho, uma por linha. Excluir por palavra-chave curta, como slider.min.js, é mais resistente porque continua valendo mesmo se a versão do arquivo mudar na próxima atualização do plugin.
O que o Safe Mode do delay faz?
O Safe Mode exclui automaticamente jQuery, jQuery Migrate, scripts inline registrados pelo WordPress com wp_add_inline_script e arquivos das pastas internas do WordPress. Como jQuery é a dependência mais comum dos elementos que quebram, ligar o Safe Mode resolve grande parte dos casos sem você precisar listar cada arquivo manualmente.
Posso excluir um script editando a própria tag em vez da lista?
Sim. Se você consegue editar a tag do script, por estar em um snippet seu ou em um child theme, adicione o atributo nowprocket na tag. O WP Rocket reconhece esse atributo e nunca adia a tag marcada, valendo tanto para script externo quanto para script inline.
Por que o elemento volta a funcionar só depois que eu mexo na página?
Esse é o sintoma clássico do delay. O script só é liberado na primeira interação (mouse, toque, rolagem ou tecla), então o elemento que depende dele permanece congelado até esse momento. Se o seu slider, botão ou contador só anima após você mover o mouse, o delay está adiando o script dele e ele precisa entrar na lista de exclusões.
A exclusão que eu adicionei parou de funcionar depois de uma atualização. Por quê?
Provavelmente o plugin mudou o caminho ou o nome do arquivo .js na nova versão, então a URL completa que você excluiu não corresponde mais. Por isso vale excluir por palavra-chave curta em vez da URL inteira, e revalidar a página em janela anônima após cada atualização de plugins de slider, formulário ou analytics.














