Como excluir sussurros antigos em massa

Essa seria a maneira mais limpa de excluir os posts:

whispers = Post.where(post_type: 4).where("created_at < ?", 1.year.ago)

whispers.find_each do |w|
  PostDestroyer.new(Discourse.system_user, w, skip_staff_log: true).destroy
  putc "."
end

Isso funcionará essencialmente como se o usuário Sistema tivesse excluído cada post manualmente usando o botão de excluir no post. Incluí skip_staff_log para que você não polua seus logs de equipe, mas pode removê-lo se preferir que a ação seja registrada.

Acredita que isso atenderá às suas necessidades?