gpt4 book ai didi

loops - 按修改日期而不是发布日期对 Jekyll 帖子进行排序?

转载 作者:行者123 更新时间:2023-12-04 04:37:31 24 4
gpt4 key购买 nike

对于经常更新帖子的人来说,有必要根据最后修改日期 将帖子从新到旧排序,而不是 Jekyll 默认的按发布日期排序。

似乎没有简单的方法来完成这个。我已经阅读并测试了几乎所有的方法。

以下是有效的方法(部分符合预期):

使用了这个 gem https://github.com/gjtorikian/jekyll-last-modified-at但现在我必须在每个帖子的前题中手动输入 last_modified_at 以便 Jekyll 使用此循环对帖子进行排序:

{% assign sorted_posts = site.posts | sort: "last_modified_at" | reverse %}
{% for post in sorted_posts %}
<!-- CODE HERE -->
{% endfor %}

问题是在每个帖子中都有 last_modified_at,因为它会阻止插件在我每次按 CTRL+S 保存帖子时自动设置该值。

有什么方法可以使它自动化吗?

最佳答案

编辑:它只适用于开发,不确定为什么它在生产中也不起作用。每当我部署网站时,它都会用相同的日期更新所有帖子。

我非常感谢 hooks 和这篇文章:https://stackoverflow.com/a/36769049

步骤:

  • 在名为 hook-add-last-modified-date.rb_plugins 文件夹中创建了新文件
  • 将此代码粘贴到其中并保存:

    Jekyll::Hooks.register :posts, :pre_render do |post|

    # get the current post last modified time
    modification_time = File.mtime( post.path )

    # inject modification_time in post's datas.
    post.data['last-modified-date'] = modification_time

    end
  • 当我在帖子上按 CTRL+S 现在会发生两件事:a) 在我有 {{ post.last-modified-date | 的地方更新上次修改日期date_to_xmlschema }} 和 b) 它将它颠簸到索引页面上我的帖子的顶部,因为它是按该变量排序的。

爱你们!

关于loops - 按修改日期而不是发布日期对 Jekyll 帖子进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48245460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com