Como desativar comentários em posts antigos do WordPress usando PHP
Por Elisio Leonardo em 25/08/2009 (Última Actualização: 25/08/2009)
Um dos maiores problemas para quem administra um blog na Internet, são os spammers. É muito trabalhoso estar a moderar comentários, principalmente quando maior parte deles são spamms.

Comentários construtivos podem destruir o seu blog se não forem moderados
Existem muitos plugins que monitoram comentários no blog, e um deles vem até na distribuição padrão do WordPress, que é o Akismet, dos mesmos desenvolvedores do WordPress. O plugin é muito eficiente, mas de vez em quando sempre ficam aquelas falhas que sistemas automáticos sempre terão, e alguns spams chegam a ser publicados no nosso blog.
Uma forma de reduzir este problema, é desativando comentários em posts mais antigos, e assim apenas se concentrar nos comentários sobre os mais recentes. Mais uma vez, milhares de plugins já foram publicados, e podem fazer isso por você. O problema é que quando se instalam muitos plugins no WordPress, vários problemas extras podem ocorrer, pelo que devemos evitar o excesso de plugins.
A solução mais prática neste caso, é usando um script PHP, que vai fazer o serviço por nós. Copie o código abaixo, e cole no ficheiro functions.php do seu tema, e já esta! Se o seu tema não tiver um ficheiro functions.php, crie pessoalmente.
Aqui vai o código:
function close_comments( $posts ) {
if ( !is_single() ) { return $posts; }
if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( 30 * 24 * 60 * 60 ) ) {
$posts[0]->comment_status = 'closed';
$posts[0]->ping_status = 'closed';
}
return $posts;
}
add_filter( 'the_posts', 'close_comments' );
Todos os comentários em posts com mais de 30 dias serão desabilitados. Para alterar a data, apenas troque o primeiro 30 pelo número de dias que deseja colocar.
Imagem de jloriArtigos Relacionados:
- Como exibir posts mais comentados no WordPress sem usar plugins
- Como adicionar link para editar artigo nos posts do seu blog WordPress
- Como apresentar os seus futuros posts no WordPress
- Como exibir posts personalizados do WordPress na Homepage do blog
- Como mostrar a data da última modificação dos seus posts no WordPress
99 views
Um








Elisio Leonardo on Tue, 25th Aug 2009 2:23 am Comment
Novo post: Como desativar comentários em posts antigos do WordPress usando PHP http://bit.ly/3iG2wY
[Reply]