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

Como corrigir conflitos de cache entre WP Rocket e Elementor

Time Full Services Time Full Services
Tipo Performance & Velocidade
Nome do erro Conflito de cache entre WP Rocket e Elementor EN: WP Rocket cache conflict with Elementor
Severidade Grave
Descrição O conflito de cache entre WP Rocket e Elementor quebra o layout no frontend quando o Remove Unused CSS remove os arquivos de CSS dinâmico do builder. A correção e adicionar os caminhos do Elementor ao campo Safelist de CSS e limpar o cache.

O que é conflito de cache WP Rocket Elementor?

O conflito de cache entre WP Rocket e Elementor acontece quando as otimizacoes de CSS e JavaScript do WP Rocket processam ou removem os arquivos que o Elementor gera dinamicamente por página (em wp-content/uploads/elementor/css/). O Elementor compila o estilo de cada página, post e Kit global em arquivos como post-123.css e global.css; quando o Remove Unused CSS, o Optimize CSS Delivery ou o Combine CSS interferem nesses arquivos, o navegador recebe a página sem as regras de estilo do builder.

Como identificar

  • Layout quebrado, sem espacamento e sem cores no frontend, enquanto o editor do Elementor mostra a página correta
  • Estilos retornam ao normal quando você limpa o cache do WP Rocket e somem de novo após alguns 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 de estilo do Elementor (elementor-frontend, elementor-post-123) somem ou viram preload
  • Botões, acordeoes, abas e carrosseis do Elementor param de responder ao clique porque o Delay JavaScript Execution segura o elementor-frontend.js
  • O problema desaparece com o WP Rocket desativado e volta ao reativar o plugin
  • Mensagem ‘Used CSS is being generated’ no admin e a página segue sem estilo enquanto a fila assincrona não termina
Antes de começar: Faca backup do banco antes de mexer nas opções de otimização. As configurações do WP Rocket ficam na option wp_rocket_settings e um backup permite reverter para o estado anterior caso o Used CSS regenerado piore o layout.

Como prevenir

  • Sempre que editar uma página no Elementor, rode Elementor -> Tools -> Regenerate Files & Data e em seguida limpe o cache do WP Rocket, nessa ordem
  • Mantenha os caminhos do Elementor (elementor-frontend, elementor-post, elementor-global) fixos no CSS Safelist para que novas regeneracoes do Used CSS nunca removam o estilo do builder
  • Após atualizar o WP Rocket ou o Elementor, teste o frontend em uma janela anonima com cache limpo antes de considerar o deploy concluido
  • Use o modo Safe Mode do Elementor para confirmar que um problema de layout vem do cache e não de outro plugin antes de alterar as otimizacoes

Causa

  • A opção Remove Unused CSS (aba File Optimization) classifica o CSS dinâmico do Elementor como não utilizado e o remove, gerando o inline 'style id=wpr-usedcss' sem as regras do builder.
  • A opção Optimize CSS Delivery / Load CSS Asynchronously adia o carregamento das folhas do Elementor e a página renderiza antes do estilo chegar (FOUC e layout sem formatacao).
  • A opção Combine CSS files junta os arquivos por página do Elementor (post-ID.css e global.css) num único bundle que perde os caminhos relativos de fontes e icones.
  • A opção Delay JavaScript Execution segura o elementor-frontend.js e o frontend-modules.js até a interacao do usuário, travando widgets interativos (abas, acordeao, carrossel).
  • O cache do WP Rocket foi gerado antes do Elementor recompilar o CSS após uma edição (Regenerate CSS & Data), servindo uma versão antiga do estilo da página.
  • O Lazy Load do WP Rocket aplica a imagens de fundo definidas via CSS pelo Elementor, deixando seções inteiras sem background.

Como resolver

  1. Confirme que a causa e o WP Rocket: No painel, va em Settings -> WP Rocket -> Dashboard e clique em Clear and preload cache. Se o layout voltar ao normal e quebrar de novo em poucos minutos, o conflito esta nas otimizacoes de CSS, não no Elementor.
  2. Adicione o Elementor ao Safelist do Remove Unused CSS: Va em Settings -> WP Rocket -> File Optimization, role até Optimize CSS delivery e abra a área de texto CSS Safelist. Cole, uma por linha, as folhas e seletores do Elementor (elementor-frontend, elementor-post, elementor-global, e-flex). Salvar limpa e regenera o Used CSS com essas regras preservadas.
  3. Exclua os scripts do Elementor do Delay JavaScript Execution: Ainda em File Optimization, na seção Delay JavaScript Execution, adicione na lista de exclusão os scripts do builder para que abas, acordeoes e carrosseis voltem a responder ao clique.
    /elementor/assets/js/frontend
    /elementor-pro/assets/js/
    elementorFrontendConfig
  4. Recompile o CSS do Elementor e limpe o cache do WP Rocket: Em Elementor -> Tools -> General clique em Regenerate Files & Data para reconstruir os arquivos em uploads/elementor/css, depois volte ao Dashboard do WP Rocket e clique em Clear and preload cache para servir o estilo atualizado.
  5. Se persistir, isole a otimização culpada: Desative uma por vez Combine CSS files, Optimize CSS delivery e Lazy Load do CSS background, recarregando o frontend com cache limpo a cada teste, até identificar qual opção quebra o layout e manter so essa desligada.
HTML
elementor-frontend
elementor-frontend-inline
elementor-post-
elementor-global
elementor-pro
widget-
e-flex
e-con
elementor-kit-

Perguntas frequentes

Por que o site fica sem estilo so no frontend e o editor do Elementor continua normal?
O editor carrega o CSS direto do Elementor, sem passar pelas otimizacoes do WP Rocket. O frontend serve a versão em cache, onde o Remove Unused CSS removeu as folhas do builder. Por isso a quebra aparece so para o visitante.
Preciso desativar todo o WP Rocket para resolver o conflito com o Elementor?
Não. Na maioria dos casos basta adicionar os caminhos do Elementor ao CSS Safelist e excluir o elementor-frontend.js do Delay JavaScript Execution. Assim você mantem o cache e o ganho de velocidade sem quebrar o layout.
O que e a tag style id wpr-usedcss que aparece no código da página?
E o CSS inline que o Remove Unused CSS injeta após o título da página com apenas as regras que o WP Rocket julgou usadas. Quando ele descarta as regras dinâmicas do Elementor, esse bloco fica incompleto e o layout quebra.
Adicionei o Elementor ao Safelist e o layout continua quebrado, e agora?
Limpe o cache com Clear and preload cache para forcar a regeneracao do Used CSS. Se persistir, desative Combine CSS files e Optimize CSS delivery um de cada vez para identificar qual opção remove o estilo do builder.
Os botões e abas do Elementor pararam de funcionar depois do WP Rocket, por que?
O Delay JavaScript Execution segura o elementor-frontend.js até a primeira interacao do usuário. Excluir esse script da lista de Delay JavaScript faz os widgets interativos voltarem a responder normalmente.
O Lazy Load do WP Rocket pode quebrar imagens de fundo do Elementor?
Sim. Quando a imagem de fundo e definida via CSS pelo Elementor, o Lazy Load pode atrasar o carregamento e deixar a seção sem background. Desligar o Lazy Load para imagens via CSS ou excluir a seção resolve.
Devo limpar o cache do Elementor ou do WP Rocket primeiro?
Primeiro recompile no Elementor (Regenerate Files & Data) para reconstruir os arquivos de CSS por página, depois limpe o cache do WP Rocket. Inverter a ordem faz o WP Rocket cachear um CSS desatualizado.
O problema acontece também com o Elementor Pro e o Theme Builder?
Sim. Templates de header, footer e single do Theme Builder geram CSS próprio em uploads/elementor/css e sofrem o mesmo conflito. Inclua os caminhos elementor-pro e elementor-global no Safelist para proteger esses estilos.

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