Comment trier les messages d'un sujet par date ?

J’ai importé une ancienne grande liste de diffusion dans Discourse et j’ai constaté (après avoir fusionné divers fils de discussion qui n’avaient pas été initialement correctement identifiés comme faisant partie d’un fil parent) que les fils de discussion sont devenus désordonnés. De nombreux messages de fils de discussion datant d’une époque antérieure s’affichent dans Discourse APRÈS des fils parents ayant des dates antérieures.

Existe-t-il une méthode pour trier les fils de discussion afin qu’ils soient ordonnés par date, du plus ancien (message d’origine) au plus récent ?

Non. Le problème est que les sujets sont triés par ordre d’ID de message. Et, comme vous l’avez décrit, vous avez importé les messages dans un ordre différent de celui où ils auraient dû être créés. Je crains que la seule solution appropriée soit de corriger l’importation afin que les messages soient importés dans le bon ordre. Cependant, il semble que tout ce que vous ayez à faire soit d’effacer la base de données et de relancer le script d’importation.

(Ou d’autres « solutions » consistent à ne pas se soucier de l’ordre des messages, car il s’agit d’anciennes données que personne ne lira de toute façon, ou à procéder, pour chaque sujet, à la suppression de tous les messages existants et à leur recréation dans le bon ordre.)

Hmm, ils sont en place depuis plusieurs mois maintenant. Je ne pense pas vraiment que la suppression et la réimportation soient une solution appropriée. Je me demande si nous pouvons créer un plugin permettant de réorganiser les identifiants de publication… hmm.

Oh. C’est dommage. Tout est possible, je suppose, mais cela affectera les performances de l’ensemble du site pour toujours.

Vous pourriez éventuellement supprimer ces sujets et les champs personnalisés associés, puis exécuter à nouveau le script. Vous devriez tester très soigneusement sur un site de préproduction avant de le faire sur vos données en production.

Si les identifiants des messages sont réordonnés, je ne pense pas que cela ait un impact permanent. Je suppose qu’une autre option serait un plugin qui trierait simplement un fil par date au moment de la requête…

Exactement. Si vous supprimez et recréez toutes les publications dans le bon ordre, tout sera en ordre.