Cómo ordenar los mensajes de un tema por fecha?

He importado una lista de correo antigua y extensa en Discourse y he descubierto (después de fusionar varios hilos que inicialmente no se identificaron correctamente como parte de un hilo principal) que los hilos han quedado desordenados. Muchos mensajes de hilos con fechas anteriores se muestran en Discourse después de los hilos principales que tienen fechas más tempranas.

¿Existe algún método para reordenar los hilos de modo que estén ordenados por fecha, desde el más antiguo (publicación original) hasta el más reciente?

No. El problema es que los temas se ordenan según el ID de la publicación. Y, como has descrito, has importado las publicaciones en un orden distinto al de su creación. Me temo que la única solución adecuada es corregir la importación para que las publicaciones se importen en el orden correcto. Sin embargo, parece que lo único que necesitarías hacer es borrar la base de datos y volver a ejecutar el script de importación.

(Otras “soluciones” incluyen: no preocuparse por el orden de las publicaciones, ya que son contenido antiguo que nadie va a leer de todos modos, o idear un método para, en cada tema, eliminar todas las publicaciones existentes y volver a crearlas en el orden correcto.)

Hmm, estas medidas llevan en vigor desde hace varios meses. Realmente no creo que la eliminación y la reimportación sean una solución adecuada. Me pregunto si podríamos desarrollar un plugin que permita reordenar los IDs de las publicaciones… hmm.

Oh, qué lástima. Supongo que todo es posible, pero eso afectará el rendimiento de todo el sitio para siempre.

Podrías, en teoría, eliminar esos temas y los campos personalizados asociados, y luego ejecutar el script nuevamente. Deberías probarlo muy cuidadosamente en un sitio de staging antes de hacerlo en tus datos en vivo.

Si los IDs de los mensajes se reordenan, no creo que eso tenga un efecto permanente. Supongo que otra opción sería un plugin que simplemente ordene un hilo por fecha a medida que se consulta…

Correcto. Si eliminas y vuelves a crear todos los mensajes en el orden correcto, ya estarás listo.