我正在尝试将this hook应用于自定义集合:
挂钩
Jekyll::Hooks.register :docs, :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
收藏
collections:
docs:
output: true
但是目前尚未分配last-modified-date
。
我看到on this comment可以使用集合名称。
我正在尝试按日期对它们进行排序并列出它们,但现在该字段显示为空。在设置挂钩之前,我在doc上创建的所有字段均已创建,因此也许我需要做一些工作才能使其正常工作。
有什么想法吗? 挂钩何时开始运行? (特别是对于先前存在的文件) 我应该如何设置它以使用收藏夹?
答案 0 :(得分:1)
尝试一下,当您在本地构建或服务jekyll网站时,应该在控制台中输出一些信息。这可以帮助调试。
Jekyll::Hooks.register :docs, :pre_render do |post|
# debug
puts "Firing :docs, :pre_render from : " + File.basename(__FILE__) + " for : " + post.relative_path
# get the current post last modified time
modification_time = File.mtime( post.path )
# debug
puts "modification_time = " + modification_time.strftime('%A, %B %dth %Y at %l:%M%p')
# inject modification_time in post's datas.
post.data['last-modified-date'] = modification_time
end
请注意,挂钩在github页面上不起作用。