WP Manifestindependent plugin directory
manifest / performance / cache-busting

Cache Busting

Plugin WordPress para forçar atualização de CSS/JS nos navegadores com interface administrativa elegante

by Marcelo Viana de Andrade · github.com/marcelovianaandrade/cache-busting · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/marcelovianaandrade/cache-busting/archive/refs/heads/main.zip

# Cache Busting

Baixar plugin   Ver releases   Star

Plugin WordPress leve para forçar a atualização de CSS e JS nos navegadores através de versionamento por query string. Oferece uma interface administrativa simples para gerenciar a versão e exibir o histórico da última atualização.


✨ Recursos

  • 🎯 Interface administrativa em Configurações → Cache Busting
  • Botão de atualização rápida — incrementa a versão automaticamente seguindo o padrão AAAA.MM.DD.N
  • ✏️ Edição manual com validação de formato por regex
  • 📅 Histórico visível — mostra a versão atual, data/hora da última atualização e quem alterou
  • 🔒 Só afeta o próprio site — URLs externas (CDNs, Google Fonts) são preservadas
  • 🧩 Compatível com Elementor, WooCommerce e qualquer tema/plugin
  • 🪶 Leve — arquivo único, sem dependências, sem JS no front-end

📸 Screenshots

Interface principal

Interface principal do plugin com edição manual e seção 'Como funciona' Painel administrativo em Configurações → Cache Busting: versão atual, sugestão de próxima versão, formulário de edição manual e explicação detalhada de como o plugin funciona.

Versão atualizada com sucesso

Plugin após atualização da versão com mensagens de confirmação Feedback visual quando a versão é atualizada — mensagens de confirmação informam que os navegadores recarregarão os arquivos automaticamente.

📦 Instalação

Método 1: Upload via painel do WordPress

  1. Baixe o ZIP em Releases (ou clone este repo)
  2. WordPress Admin → Plugins → Adicionar novo → Enviar plugin
  3. Selecione cache-busting.zip
  4. Clique em Instalar agora e depois em Ativar plugin

Método 2: Manual via FTP/SFTP

  1. Faça upload da pasta cache-busting/ para /wp-content/plugins/
  2. Ative o plugin em Plugins → Plugins instalados

🚀 Uso

Após ativar, acesse Configurações → Cache Busting.

A interface mostra dois cards:

  • Versão Atual — versão em uso, data/hora da última atualização e o usuário responsável
  • Atualização Rápida — sugestão da próxima versão e botão de incremento automático

Você também pode editar manualmente o número da versão. O formato exigido é:

AAAA.MM.DD.N

Exemplo: 2026.05.07.1 (primeira atualização de 7 de maio de 2026).

Incremente o .N para múltiplas atualizações no mesmo dia: 2026.05.07.2, 2026.05.07.3, etc.

⚙️ Como funciona

O plugin engancha nos filtros nativos do WordPress:

add_filter( 'style_loader_src',  'cache_bust', 999 );
add_filter( 'script_loader_src', 'cache_bust', 999 );

E adiciona um parâmetro ?cv=VERSAO ao final das URLs de CSS e JS — apenas para arquivos servidos do próprio site:

Antes:  /wp-content/themes/meu-tema/style.css?ver=6.7
Depois: /wp-content/themes/meu-tema/style.css?cv=2026.05.07.1

Quando a versão muda, o navegador trata como um novo recurso e baixa o arquivo novamente, ignorando o cache.

📋 Requisitos

  • WordPress 5.0 ou superior
  • PHP 7.2 ou superior

🛠️ Desenvolvimento

# Clone o repositório
git clone https://github.com/SEU-USUARIO/cache-busting.git

# Estrutura
cache-busting/
├── cache-busting.php   # Plugin principal
├── readme.txt          # Metadados WordPress.org
└── index.php           # Anti-listagem de diretório

Para gerar um ZIP instalável:

zip -r cache-busting.zip cache-busting/ -x "*.DS_Store" "*.git*"

📝 Changelog

1.0.0

  • Lançamento inicial
  • Interface administrativa com cards de versão atual e atualização rápida
  • Filtros style_loader_src e script_loader_src aplicados a arquivos do próprio site
  • Validação de formato AAAA.MM.DD.N
  • Registro de data/hora e usuário responsável pela última atualização

📄 Licença

Este projeto está licenciado sob a GPL v2 ou posterior — veja o arquivo LICENSE para detalhes.

👤 Autor

Marcelo Viana de Andrade


Se este plugin foi útil, considere deixar uma ⭐ no repositório!