Qualche anno fa siamo passati da vBulletin a Discourse. In seguito a questa migrazione, sono stati importati anche molti utenti bannati. Questo non è il problema. I post che hanno creato sono risultati visibili su Discourse. Quasi tutti questi utenti bannati avevano pubblicato 1 o 2 post prima di essere scoperti e bannati, ma l’impostazione che nascondeva i loro post su vBulletin ha finito per farli apparire su Discourse. Il problema è proprio la visibilità di questi post.
Esiste un modo per trovare tutti i post di utenti bannati che hanno pubblicato meno di tre post ed eliminarli in blocco?
Puoi trovare tutti gli utenti bannati con meno di 3 post utilizzando la seguente query Data Explorer:
SELECT p.user_id, COUNT(p.id) AS qtt_posts
FROM posts p
INNER JOIN users u ON u.id = p.user_id
WHERE suspended_till NOTNULL
GROUP BY user_id
HAVING COUNT(p.id) < 3
Per eliminare gli utenti puoi utilizzare l’API: /admin/users/{id}.json, puoi consultare la documentazione qui.