cuando separamos la lectura de datos de jekyll había faltado leer los
layouts para poder aplicarlos a la version preliminar. con este cambio
solo se leen cuando se los va a usar.
fixes#2006
agregué el método `Jekyll::Document#reset` para que no queden datos de
la versión anterior, porque jekyll mergea la información.
además, para evitar bugs en las plantillas, se mantienen los arrays
vacíos en el front matter para que se puedan seguir usando métodos de
arrays, como each y sort.
durante el proceso de compilación de jekyll se cargan todos los datos en
memoria, buscando e interpretando todos los archivos del sitio. en el
caso de sutty, solo queremos leer alguna información por vez.
trabajando en el buscador me dí cuenta que aunque el panel cargue los
posts desde la base de datos, sutty seguía leyendo la información
completa del sitio, porque respetaba el proceso de lectura de jekyll.
con este cambio podemos leer los _data/ por separado de los _posts/ con
lo que la carga del sitio es mucho más rápida.
siempre ordenamos primero por número de orden y fecha de creación,
siempre decrecientes. esto permite que les usuaries prioricen contenido
usando las herramientas de reordenamiento.
pg_search no soporta esto, siempre ordena por cuánto corresponde el
resultado con la búsqueda, así que lo emparchamos para que respete el
orden que necesitamos.
el reporte de error relacionado es este:
https://github.com/Casecommons/pg_search/issues/467
en realidad necesitamos una forma de consultar a la base de datos por
todas las versiones de dominios de un sitio, de una forma barata que no
nos obligue a instanciar el sitio y todos sus deploy.