O Post Revisions é sem dúvida alguma uma excelente ferramenta para o dia a dia do blogueiro. Juntamente com o Auto Save, uma função que existe para que você não perca seus textos numa queda de energia ou algum crash do navegador, por exemplo, o Post revisions ajuda bastante quando existem vários editores no blog – ou várias edições de posts pelo mesmo usuário. Não há o que discordar.
Mas existem situações em que este recurso acaba não só criando uma lista imensa de revisões deixando a edição do post (ou página) lentíssima, como inflando em demasia o base de dados no seu WordPress. Isso porque cada revisão é considerada como um artigo único dentro da tabela wp_posts, que o nome já enseja a própria função. Hoje pesquisei como desabilitar esta função para um de nossos clientes e já coloco a dica no blog da Via pra servir de referência para os demais VIPs.
Primeiramente, você precisa editar o arquivo wp-config.php. Isso pode ser feito via cPanel (www.seudominio.com/cpanel) ou com um cliente de FTP, como o Filezilla.
Nele, insira as seguintes linhas:
define(‘AUTOSAVE_INTERVAL’, 300 ); // seconds
define(‘WP_POST_REVISIONS’, false );
Estas instruções dizem ao seu WordPress para que ele salve o seu post em edição a cada 5 minutos e para que ele não execute as revisões.
Agora é necessário remover as revisões antigas, já que apenas inibir as novas resolve o problema da lentidão (em parte), mas não a inflação da sua base de dados. Pra isso, acesse pelo cPanel o ítem PHPMyAdmin. Selecione o banco de dados do seu blog (verifique o nome dele dentro do arquivo wp-config.php) e clique no menu superior SQL.
Dentro da caixa de pesquisa cole o seguinte comando:
DELETE FROM wp_posts WHERE post_type = “revision”;
Clique em Executar.
Se tudo der certo, aparecerá uma mensagem parecida com esta:

Se nenhum registro for eliminado, existem duas hipóteses: ou você não tinha nenhum post revision ou você não selecionou a tabela corretamente.
Tags: banco de dados, dicas, post revisions, revisões, wordpress




October 13th, 2009 at 5:44 pm
É bacana fazer essa limpesa no banco de dados mesmo sem desativar o recurso de revisões? Ou pode dar tilt?
Reply
Daniel Becher Reply:
October 14th, 2009 at 10:17 pm
Oi Lu, que bom te ver aqui no blog da Via!
Eu acho que tilt não daria, mas seria desnecessário a longo prazo, uma vez que em X tempo a tabela voltaria a ser “populada” novamente.
Entretanto imagino que dê um gás no WordPress se já tiver muita revisão adicionada.
PS: por mais que uma tarefa destas seja segura, é sempre bom fazer um backup da base antes de mexer (boa idéia pra adicionar no post). Então com dois cliquezinhos do mouse tu vai lá em “Export” e gera uma cópia zipada que é jogo rápido.
Abraço!
Reply
October 26th, 2009 at 6:34 pm
Encontrei essa dica em um outro blog, dei esse comando e fui viajar, na volta da viagem vi que a home do meu blog estava toda em branco desde o dia em que tinha feito isso. Como tinha backup consegui “resolver” o problema.
Voltei a pesquisar sobre o que tinha acontecido comigo, não encontrei nada, mas achei esse plugin http://wordpress.org/extend/plugins/delete-revision/ . Super simples de usar, que deleta todas as revisões e otimiza o banco de dados.
Reply