Como corrigir o Countdown Timer que não funciona no Ultimate Addons
O que é Countdown Timer do Ultimate Addons não funciona?
O Countdown Timer é o widget de contagem regressiva do Ultimate Addons for Elementor (UAE), usado para criar urgência em ofertas, lançamentos e eventos. Segundo a documentação oficial, ele oferece três tipos de timer (entre eles a data fixa e o modo evergreen), controle de Due Date, rótulos personalizados, ações pós-expiração como ocultar, redirecionar ou exibir uma mensagem, e a opção de mostrar apenas as unidades de tempo desejadas. A contagem em si roda no navegador via JavaScript: o servidor entrega a data alvo e o script faz o decremento segundo a segundo no lado do cliente.
É exatamente esse desenho que explica por que o Countdown Timer do Ultimate Addons não funciona em certos cenários. Se o JavaScript do widget não carrega, ou carrega depois de um erro de console, a contagem nunca inicia e o timer fica parado no valor inicial. Se um plugin de cache serve uma versão estática da página, o instante salvo no HTML congela e a contagem regressiva passa a exibir uma data errada. E no modo evergreen, que depende de um cookie por visitante para fixar o fim da contagem, o bloqueio desse cookie faz o timer reiniciar a cada carregamento.
Como identificar
- A contagem regressiva aparece com os números, mas fica travada e não decrementa nenhum segundo ao carregar a página.
- No console do navegador surge um erro de JavaScript (‘Uncaught ReferenceError’ ou ‘is not defined’) logo ao abrir a página com o Countdown Timer.
- O timer evergreen volta ao tempo cheio toda vez que a página é recarregada, em vez de continuar de onde parou para aquele visitante.
- O Countdown Timer some por completo no front-end, mesmo aparecendo normalmente no editor do Elementor.
- A contagem mostra uma data ou um horário diferente do configurado na Due Date, como se estivesse adiantada ou atrasada em algumas horas.
Como prevenir
- Mantenha as páginas com Countdown Timer fora do cache estático ou use cache curto, já que a contagem precisa de HTML atualizado para iniciar em tempo real.
- Ao ativar otimização de JavaScript no plugin de cache, sempre exclua o script do Ultimate Addons e revalide o front-end antes de publicar.
- Configure o fuso horário do WordPress pela cidade, não por um deslocamento UTC, para que a Due Date e a contagem usem o mesmo horário.
- Classifique os cookies do próprio site como funcionais no banner de consentimento para não quebrar o comportamento por visitante do timer evergreen.
- Mantenha o Elementor e o Ultimate Addons for Elementor sempre na versão estável mais recente, validando em staging antes de atualizar em produção.
Causa
- Um plugin de cache (como o WP Rocket ou LiteSpeed Cache) salvou uma versão estática da página: o instante inicial da contagem fica congelado no HTML servido e o timer passa a exibir uma data errada em vez de contar em tempo real.
- A otimização de JavaScript do plugin de cache adiou, combinou ou minificou o script do Countdown Timer junto com o JS do Elementor, quebrando a inicialização do widget e deixando os números parados no valor inicial.
- O modo evergreen depende de um cookie por visitante para fixar o fim da contagem; quando o cookie é bloqueado pelo navegador ou descartado por um plugin de consentimento, o timer reinicia a contagem a cada novo carregamento da página.
- O fuso horário em Configurações Gerais do WordPress está em UTC ou diferente do fuso da Due Date informada no widget, fazendo a contagem aparecer adiantada ou atrasada em relação ao horário esperado.
- Um conflito de JavaScript com outro plugin ou addon do Elementor interrompe a execução do script da página antes do Countdown Timer inicializar, deixando o widget travado ou ausente no front-end.
Como resolver
- Exclua a página do cache e da otimização de JS: No seu plugin de cache, adicione a URL da página com o Countdown Timer à lista de exclusão de cache e remova o handle do script do Ultimate Addons das otimizações de adiar e combinar JavaScript. Isso garante que o navegador receba o HTML fresco e execute o script do widget na ordem correta.
Painel WP -> WP Rocket -> Cache Avançado -> Nunca cachear (URLs) Adicione o caminho da página, ex.: /promo-do-mes/ Painel WP -> WP Rocket -> Otimização de Arquivos -> exclua 'uael-frontend' de Adiar JS e Combinar JS - Confira o tipo de timer e a Due Date no widget: Abra o widget no Elementor e confirme o tipo de contagem (data fixa ou evergreen) e a Due Date. Para data fixa, defina uma data e hora no futuro; para evergreen, ajuste o intervalo de horas/minutos da campanha. Uma Due Date no passado faz o timer já nascer zerado.
Editor do Elementor -> selecione o widget Countdown Timer -> aba Conteúdo Confira o campo Type (Fixed Date ou Evergreen) Em Fixed Date, defina a Due Date para uma data e hora futuras - Alinhe o fuso horário do WordPress: Em Configurações Gerais, troque o fuso de UTC pela sua cidade, para que a contagem use o mesmo horário da Due Date e pare de aparecer adiantada ou atrasada. Salve e recarregue a página para conferir.
Painel WP -> Configurações -> Geral -> Fuso horário Selecione a cidade correta (ex.: São Paulo) em vez de um deslocamento UTC fixo Clique em Salvar alterações e recarregue a página do timer - Libere o cookie do timer evergreen: Se você usa o modo evergreen e a contagem reinicia a cada visita, verifique se o navegador ou o banner de consentimento de cookies está bloqueando os cookies do site. Permita os cookies funcionais do próprio domínio para o timer fixar o fim da contagem por visitante.
Navegador -> Configurações do site -> permita cookies para o seu domínio Plugin de consentimento -> classifique os cookies do site como Necessários/Funcionais Teste em uma janela anônima limpa e recarregue a página duas vezes para validar - Isole o conflito de JavaScript: Se o erro persistir, abra o console do navegador para ler a mensagem exata, depois desative os outros plugins um a um e troque para um tema padrão, recarregando o editor e o front-end a cada teste, até identificar o item que interrompe o script da página.
Navegador -> F12 -> aba Console -> recarregue e leia o erro exato Painel WP -> Plugins -> desative os demais plugins um a um Painel WP -> Aparência -> Temas -> ative um tema padrão e teste novamente
<?php
/**
* Mantém o front-end do Ultimate Addons fora da combinação/adiamento de JS
* do WP Rocket nas páginas com Countdown Timer, evitando que o script
* do widget seja quebrado pela otimização.
*/
add_filter( 'rocket_exclude_js', 'full_uael_excluir_js_countdown' );
function full_uael_excluir_js_countdown( $excluded ) {
$excluded[] = '/wp-content/plugins/header-footer-elementor/(.*).js';
return $excluded;
}
add_filter( 'rocket_delay_js_exclusions', 'full_uael_excluir_delay_countdown' );
function full_uael_excluir_delay_countdown( $excluded ) {
$excluded[] = 'uael-frontend';
return $excluded;
}














