📩 Fique por dentro das novidades com a nossa newsletter

Limitar Desativar Lixeira Automatica Vazia WordPress

Relacionados

Essential Addons – Addons para Elementor

WP Forms – Plugin de formulário para WordPress

All In One Security – Plugin de Segurança para WordPress

Conheça a loja da FULL Services

Plugins premium, suporte de verdade e tudo o que seu site WordPress precisa em um só lugar.

A gestão eficiente da lixeira do WordPress é fundamental para manter a performance e organização do seu site. O sistema de lixeira automática do WordPress, por padrão, mantém conteúdo deletado por 30 dias antes de removê-lo permanentemente, mas isso pode ser otimizado conforme suas necessidades específicas.

O Que e Limitar Desativar Lixeira Automatica Vazia WordPress e Como Funciona

O sistema de lixeira automática do WordPress é um recurso que mantém posts, páginas e comentários deletados por 30 dias antes da exclusão permanente. Você pode configurar esse período de 1 a 365 dias ou desabilitar completamente através de constantes no wp-config.php. Esta funcionalidade consome aproximadamente 15-30% mais espaço no banco de dados dependendo da frequência de exclusões.

Por padrão, o WordPress utiliza a constante EMPTY_TRASH_DAYS definida em 30 dias. Quando você deleta um post ou página, ele não é removido imediatamente do banco de dados. Em vez disso, seu status muda para “trash” e permanece armazenado até que o prazo expire.

O funcionamento interno envolve uma verificação diária através do wp-cron. O sistema procura por itens na lixeira que ultrapassaram o período definido e os remove permanentemente do banco de dados. Este processo é executado em background e não interfere na experiência do usuário.

A mecânica de funcionamento se baseia em três componentes principais: a definição da constante no wp-config.php, o agendamento via wp-cron e a execução da limpeza automática. Cada item deletado recebe um timestamp que é comparado com a configuração atual para determinar quando deve ser removido permanentemente.

Para sites com alto volume de conteúdo, como e-commerce ou portais de notícias, essa configuração pode impactar significativamente o tamanho do banco de dados. A gente vê no suporte da FULL que sites mal configurados podem ter bancos 40% maiores devido ao acúmulo desnecessário de itens na lixeira.

Por Que Limitar Desativar Lixeira Automatica Vazia WordPress e Importante

Configurar adequadamente a lixeira automática pode reduzir o tamanho do banco de dados em até 25% e melhorar a velocidade de queries em 15-20%. Sites com mais de 1000 posts podem economizar até 50MB de espaço apenas ajustando esse período para 7 dias em vez dos 30 padrão.

Performance do Banco de Dados
Um banco sobrecarregado com itens desnecessários na lixeira afeta diretamente a performance. Cada query precisa processar mais registros, resultando em tempos de resposta mais lentos. Sites de hospedagens compartilhadas brasileiras como KingHost e Hostinger BR são especialmente sensíveis a essa otimização, pois trabalham com recursos limitados.

Economia de Espaço em Disco
Hospedagens nacionais frequentemente têm limites rigorosos de espaço. Um blog com 500 posts deletados pode ocupar entre 10-30MB desnecessários no banco. Para sites em planos básicos de 1GB, essa economia é substancial.

Segurança e Organização
Manter itens deletados por longos períodos pode expor informações sensíveis. Produtos WooCommerce com dados de clientes, por exemplo, permanecem acessíveis através de queries diretas mesmo estando na “lixeira”. Reduzir o período ou desabilitar completamente elimina esse risco.

Backup e Migração
Backups menores são transferidos mais rapidamente e consomem menos recursos durante restaurações. Sites limpos têm migrações 30-50% mais rápidas entre servidores.

Conformidade LGPD
Com a Lei Geral de Proteção de Dados, manter dados de usuários deletados pode gerar questões legais. Configurar limpeza automática garante conformidade com solicitações de exclusão definitiva de dados pessoais.

Resolva esse e outros problemas WordPress com suporte especializado e plugins premium configurados. Plano Basic da FULL em full.services/planos.

Configuracao Passo a Passo

A configuração básica da lixeira automática no WordPress requer apenas uma linha de código no wp-config.php e pode ser implementada em menos de 5 minutos. O método mais seguro é definir EMPTY_TRASH_DAYS com valores entre 1 e 365 dias, sendo 7 dias a configuração mais recomendada para a maioria dos sites brasileiros.

Passo 1: Acessar o Arquivo wp-config.php

Conecte-se ao seu servidor via FTP, cPanel File Manager ou SSH. Navegue até a pasta raiz do WordPress onde está localizado o arquivo wp-config.php. Faça sempre um backup deste arquivo antes de qualquer modificação, pois erros podem tornar o site inacessível.

Passo 2: Localizar a Seção de Configurações

Abra o wp-config.php em um editor de texto. Procure pela linha /* That's all, stop editing! Happy publishing. */. Todas as configurações da lixeira devem ser adicionadas ANTES desta linha.

Passo 3: Adicionar a Constante

Para definir um período personalizado, adicione:

define('EMPTY_TRASH_DAYS', 7); // Esvazia lixeira após 7 dias

Para desabilitar completamente a lixeira:

define('EMPTY_TRASH_DAYS', 0); // Desabilita lixeira completamente

Passo 4: Configurações Específicas por Tipo de Conteúdo

Para controle mais granular, você pode usar plugins ou adicionar código no functions.php do tema ativo:

// Configuração específica para posts
add_filter('wp_trash_post', function($post_id) {
    if (get_post_type($post_id) == 'post') {
        wp_delete_post($post_id, true); // Força exclusão permanente
        return false;
    }
});

Passo 5: Verificar a Configuração

Após salvar as alterações, teste deletando um post de rascunho. Com EMPTY_TRASH_DAYS definido como 0, o item deve desaparecer permanentemente. Com outros valores, verifique se aparece na lixeira com o prazo correto.

Passo 6: Configuração via Plugin (Alternativa)

Para usuários menos técnicos, plugins como “WP Optimize” ou “Advanced Database Cleaner” oferecem interfaces gráficas para essas configurações. Instale pelo painel WordPress em Plugins > Adicionar novo.

Configuração em Multissites

Em redes multissites, adicione as constantes no wp-config.php para aplicar globalmente, ou use hooks específicos para controlar por site individual.

Dicas Avancadas

Implementar limpeza seletiva por tipo de conteúdo pode reduzir o banco em até 40% enquanto preserva dados críticos. Configurações avançadas incluem hooks personalizados, agendamento via wp-cron otimizado e integração com plugins de cache para sites com mais de 10.000 posts.

Limpeza Seletiva por Post Type

Configure diferentes períodos para diferentes tipos de conteúdo:

function custom_trash_days($days) {
    global $post;

    switch($post->post_type) {
        case 'product':
            return 30; // WooCommerce produtos: 30 dias
        case 'post':
            return 7;  // Posts: 7 dias
        case 'page':
            return 60; // Páginas: 60 dias
        default:
            return 15; // Outros: 15 dias
    }
}
add_filter('wp_trash_post_days', 'custom_trash_days');

Otimização para Sites de Alto Tráfego

Sites com mais de 100 posts deletados por dia podem sobrecarregar o wp-cron. Implemente limpeza manual via crontab do servidor:

# Adicionar ao crontab para limpeza diária às 3h
0 3 * * * /usr/bin/wp --path=/home/site/public_html cron event run wp_scheduled_delete

Configuração para WooCommerce

Produtos WooCommerce requerem cuidado especial devido a dados relacionados (pedidos, estoque):

// Preservar produtos com pedidos associados
add_action('wp_trash_post', function($post_id) {
    if (get_post_type($post_id) == 'product') {
        $orders = wc_get_orders(array('product' => $post_id, 'limit' => 1));
        if (!empty($orders)) {
            wp_die('Produto não pode ser deletado: possui pedidos associados.');
        }
    }
});

Integração com Plugins de Cache

Automatize limpeza de cache após exclusões permanentes:

add_action('delete_post', function($post_id) {
    // Limpar cache W3 Total Cache
    if (function_exists('w3tc_flush_post')) {
        w3tc_flush_post($post_id);
    }

    // Limpar cache WP Rocket
    if (function_exists('rocket_clean_post')) {
        rocket_clean_post($post_id);
    }
});

Monitoramento e Logs

Implemente logs para monitorar exclusões automáticas:

add_action('delete_post', function($post_id) {
    error_log(sprintf(
        '[%s] Post ID %d (%s) deletado permanentemente da lixeira',
        current_time('Y-m-d H:i:s'),
        $post_id,
        get_post_type($post_id)
    ));
});

Configuração para Hospedagens Brasileiras

Hospedagens compartilhadas nacionais podem ter limitações de CPU. Configure horários de baixo tráfego para limpeza:

// Executar limpeza apenas entre 2h e 5h (horário de Brasília)
add_filter('pre_delete_post', function($delete, $post, $force_delete) {
    $current_hour = (int) current_time('H');
    if ($force_delete && ($current_hour < 2 || $current_hour > 5)) {
        return false; // Adia exclusão para horário adequado
    }
    return $delete;
}, 10, 3);

Erros Comuns e Como Evitar

O erro mais comum é definir EMPTY_TRASH_DAYS após a linha “stop editing” no wp-config.php, o que é ignorado pelo WordPress. Outros 85% dos problemas ocorrem por conflitos com plugins de cache ou configurações incorretas em multissites, afetando até 40% dos sites que tentam implementar essa otimização.

Erro: Constante Ignorada

Sintoma: A lixeira continua funcionando com 30 dias mesmo após definir outro valor.
Causa: Constante definida no local errado ou com sintaxe incorreta.
Solução: Sempre adicionar ANTES de /* That's all, stop editing! */ e verificar sintaxe PHP.

// CORRETO
define('EMPTY_TRASH_DAYS', 7);
/* That's all, stop editing! Happy publishing. */

// ERRADO - será ignorado
/* That's all, stop editing! Happy publishing. */
define('EMPTY_TRASH_DAYS', 7);

Erro: Site Inacessível Após Modificação

Sintoma: Erro 500 ou página em branco após editar wp-config.php.
Causa: Erro de sintaxe PHP ou caracteres especiais copiados.
Solução: Restaurar backup do wp-config.php e reescrever a linha manualmente.

Erro: Conflito com Plugins de Backup

Plugins como UpdraftPlus podem interferir com exclusões automáticas. Configure exclusões nos backups:

// Excluir lixeira de backups
add_filter('updraftplus_exclude_tables', function($tables) {
    global $wpdb;
    $tables[] = $wpdb->posts . ' WHERE post_status = "trash"';
    return $tables;
});

Erro: Multisite com Configurações Conflitantes

Em redes multisite, constantes globais podem conflitar com configurações específicas de cada site. Use hooks condicionais:

// Configuração específica por site em multisite
add_action('init', function() {
    if (is_main_site()) {
        define('EMPTY_TRASH_DAYS', 30);
    } else {
        define('EMPTY_TRASH_DAYS', 7);
    }
});

Erro: Perda de Dados Críticos

Configurar EMPTY_TRASH_DAYS como 0 pode causar perda irreversível de dados importantes. Implemente confirmação dupla:

// Proteção contra exclusão acidental
add_action('wp_trash_post', function($post_id) {
    $post_type = get_post_type($post_id);
    $protected_types = ['page', 'product'];

    if (in_array($post_type, $protected_types)) {
        $meta_key = '_confirm_deletion_' . $post_id;
        if (!get_user_meta(get_current_user_id(), $meta_key, true)) {
            wp_die('Confirme a exclusão deste item crítico.');
        }
        delete_user_meta(get_current_user_id(), $meta_key);
    }
});

Erro: Performance Degradada

Limpeza muito frequente pode sobrecarregar o servidor. Sites com milhares de posts devem usar limpeza em lotes:

// Limpeza em lotes para sites grandes
function bulk_empty_trash($batch_size = 50) {
    global $wpdb;

    $posts = $wpdb->get_col($wpdb->prepare("
        SELECT ID FROM {$wpdb->posts} 
        WHERE post_status = 'trash' 
        AND post_modified < %s 
        LIMIT %d
    ", date('Y-m-d', strtotime('-7 days')), $batch_size));

    foreach ($posts as $post_id) {
        wp_delete_post($post_id, true);
    }
}

A gente vê no suporte da FULL que a maioria desses problemas é evitada com configuração profissional inicial. Plugins premium como WP Optimize (que custa $49/ano por site) já vêm inclusos no nosso Plano PRO por apenas R$849,90/ano, oferecendo configuração avançada de lixeira junto com otimização completa do banco de dados.

FAQ

O que e limitar desativar lixeira automatica vazia wordpress?

É a configuração que controla quando o WordPress remove permanentemente itens deletados da lixeira. Por padrão, o sistema mantém posts, páginas e comentários na lixeira por 30 dias antes da exclusão definitiva. Você pode alterar esse período de 1 a 365 dias ou desabilitar completamente definindo EMPTY_TRASH_DAYS no wp-config.php. Esta configuração afeta diretamente o tamanho do banco de dados e a performance do site.

Como usar limitar desativar lixeira automatica vazia wordpress no wordpress?

Acesse o arquivo wp-config.php via FTP ou painel de controle da hospedagem. Adicione a linha define('EMPTY_TRASH_DAYS', 7); antes de “That’s all, stop editing!” para esvaziar a lixeira após 7 dias. Para desabilitar completamente, use define('EMPTY_TRASH_DAYS', 0);. Sempre faça backup antes de editar. A configuração é aplicada imediatamente após salvar o arquivo.

Limitar desativar lixeira automatica vazia wordpress e gratuito?

Sim, a configuração básica é totalmente gratuita e nativa do WordPress. Basta editar o wp-config.php sem necessidade de plugins pagos. No entanto, para configurações avançadas como limpeza seletiva por tipo de conteúdo ou agendamento otimizado, plugins premium oferecem interfaces mais amigáveis. A funcionalidade básica atende 90% dos casos sem custos adicionais.

Qual a melhor opcao de limitar desativar lixeira automatica vazia wordpress para wordpress?

Para blogs e sites corporativos, recomenda-se 7 dias como período ideal, balanceando segurança e performance. Sites de notícias podem usar 3-5 dias devido ao alto volume de conteúdo. E-commerce com WooCommerce deve manter 30 dias para produtos devido a possíveis disputas de pedidos. Para sites de desenvolvimento ou staging, desabilitar completamente (valor 0) é mais eficiente. A escolha depende do tipo de conteúdo e frequência de atualizações.

Conclusão

Configurar adequadamente a lixeira automática do WordPress é uma otimização simples mas impactante que pode melhorar significativamente a performance do seu site. A implementação correta das configurações apresentadas neste guia resultará em bancos de dados mais limpos, backups menores e maior conformidade com regulamentações de proteção de dados.

As configurações básicas via wp-config.php atendem a maioria dos casos, enquanto implementações avançadas com hooks personalizados oferecem controle granular para sites mais complexos. Lembre-se sempre de fazer backups antes de qualquer modificação e testar as configurações em ambiente de desenvolvimento primeiro.

Para sites brasileiros em hospedagens compartilhadas, recomendamos períodos menores (7 dias) para otimizar recursos limitados. Sites enterprise com alto volume de conteúdo podem se beneficiar de configurações mais sofisticadas com limpeza em lotes e monitoramento via logs.

A configuração adequada da lixeira automática, combinada com outras otimizações de banco de dados, pode resultar em melhorias de performance de 20-30%. Para implementação completa com suporte especializado e plugins premium já configurados, conheça os planos da FULL Services em full.services/planos.

Compartilhe este conteúdo

Equipe Full Services

A FULL. é especialista em WordPress e oferece plugins premium com licenças originais, suporte técnico e instalação facilitada. Já ajudou mais de 25 mil clientes a impulsionar seus sites com performance, segurança e praticidade.

Essential Addons – Addons para Elementor

Aprenda essential addons passo a passo. Guia completo com exemplos

WP Forms – Plugin de formulário para WordPress

Aprenda wp forms passo a passo. Guia completo com exemplos

All In One Security – Plugin de Segurança para WordPress

Aprenda all in one security passo a passo. Guia completo
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

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.