Este documento descreve o processo de resolução de problemas comuns em ambientes WordPress após a desativação do plugin WooCommerce no projeto Coisas da Léia. Os sintomas abordados incluem a persistência de menus antigos, a ausência da barra de administração e inconsistências de layout.
1. Identificação do Problema
Após a desativação do módulo de e-commerce, o site apresentou falhas de atualização visual devido à retenção de dados:
- Cache Sujo: Páginas exibindo versões obsoletas do menu (incluindo links para “Loja” e “Carrinho”).
- Quebra de Sessão Visual: A barra de ferramentas do administrador (Admin Bar) não era exibida para usuários logados.
- Inconsistência de Scripts: Carregamento de fragmentos de código do WooCommerce em páginas estáticas de receitas.
2. Soluções Implementadas
2.1. Purga de Cache Multicamada
A primeira ação consistiu em eliminar as versões estáticas das páginas armazenadas para forçar a renderização do novo cabeçalho:
- Cache de Página: Limpeza total via plugins (ex: WP Rocket ou LiteSpeed Cache).
- Cache do Servidor/CDN: Purga de arquivos no nível da hospedagem e Cloudflare.
- Cache do Navegador: Execução de Hard Refresh (Ctrl + F5) para validar as mudanças locais.
2.2. Correção da Barra de Administração
Para garantir que a barra de ferramentas seja exibida corretamente, implementamos um filtro de prioridade no arquivo functions.php:
/**
* Força a exibição da barra de administração.
* Útil quando há conflitos de tema ou plugins que ocultam a barra indevidamente.
*/
add_filter('show_admin_bar', '__return_true');
2.3. Limpeza de Assets Residuais (Dequeuing)
Utilizamos a técnica de dequeuing para impedir o carregamento de estilos e scripts que pesavam no carregamento do blog:
/**
* Remove scripts e estilos residuais do WooCommerce.
*/
add_action( 'wp_enqueue_scripts', 'remove_woocommerce_assets', 99 );
function remove_woocommerce_assets() {
if ( ! class_exists( 'WooCommerce' ) ) {
wp_dequeue_style( 'woocommerce-layout' );
wp_dequeue_style( 'woocommerce-general' );
wp_dequeue_script( 'wc-cart-fragments' );
}
}
3. Implementação (Passo a Passo)
- Backup: Realize um backup completo antes de editar arquivos do tema.
- Edição do Tema: Acesse o arquivo
functions.php(preferencialmente em um Child Theme). - Inserção do Código: Adicione os snippets acima ao final do arquivo.
- Revisão de Menus: Vá em Aparência > Menus e remova manualmente os links de “Loja” e “Minha Conta”.
- Validação: Teste em uma janela anônima para confirmar a limpeza total.
4. Conclusão
A combinação de limpeza de cache agressiva com funções específicas para desativar scripts residuais garantiu que o site Coisas da Léia se tornasse um ambiente limpo e performático, livre de “elementos fantasmas” do sistema de vendas antigo.
Perguntas Frequentes (FAQ)
1. Por que o ícone do carrinho ainda aparece no meu menu após desativar o WooCommerce?
Isso acontece porque o item foi adicionado manualmente ao Menu de Navegação ou está “hardcoded” (fixo no código) do seu tema. A solução é ir em Aparência > Menus, localizar o link da loja ou carrinho, removê-lo e salvar. Além disso, limpe o cache do seu plugin de performance e faça um Hard Refresh (Ctrl + F5) no navegador.
2. É necessário limpar o banco de dados após remover o WooCommerce?
Sim. O WooCommerce cria tabelas personalizadas (como wp_wc_...) e armazena metadados temporários chamados Transients. Se não forem removidos, esses dados “órfãos” aumentam o tamanho do seu backup e podem causar lentidão em consultas SQL futuras. Recomenda-se o uso de ferramentas de otimização de banco de dados para uma limpeza profunda.
3. O erro “Falha ao atualizar WordPress” tem relação com o WooCommerce?
Pode ter. O WooCommerce é um plugin robusto que consome muita memória. Se o seu servidor tiver um limite de memória PHP baixo, o peso residual de processos não finalizados ou scripts mal otimizados pode causar timeouts durante atualizações do core do WordPress. Aumentar o WP_MEMORY_LIMIT para 256M no seu arquivo wp-config.php é a solução recomendada.
4. Por que a minha barra de administração (Admin Bar) sumiu?
Geralmente, isso é causado por um conflito de cache ou scripts que ocultam o elemento CSS da barra. Em migrações técnicas, como a que fizemos no projeto Coisas da Léia, forçamos a reativação da barra via código (add_filter('show_admin_bar', '__return_true');) para garantir que o administrador tenha controle total sobre a edição das páginas.