diff --git a/app/models/post.rb b/app/models/post.rb index fe3fe7a8..80229da1 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -168,7 +168,7 @@ class Post end def slug_changed? - @post.data.dig('slug') != slug + new? || @post.data.dig('slug') != slug end # Trae el contenido del post, si no lo seteamos ya. O sea que si solo @@ -290,6 +290,7 @@ class Post remove_empty_front_matter! update_lang_front_matter! update_translations! + put_in_order! end # Setea el propio idioma en el front_matter de slugs @@ -391,4 +392,14 @@ class Post @front_matter['slug'] = Jekyll::Utils.slugify(title) end end + + # Agregar al final de la cola si no especificamos un orden + # + # TODO si el artículo tiene una fecha que lo coloca en medio de + # la colección en lugar de al final, deberíamos reordenar? + def put_in_order! + return unless order.nil? + + @front_matter['order'] = @site.posts_for(@collection).count + end end