Jekyll无法显示新文章的解决方法

前些天在凌晨发布了一篇新文章,但它并没有在博客上显示出来,折腾了一会儿发现Jekyll是不会构建未来日期的文章的!

nodisplayed

还好有构建日志,不然不知道折腾到何时,在Build Logs里发现到有这样一条信息:

Skipping: _posts/YY-MM-DD-NEWPOST.md has a future date

以前都是在大白天发布文章的 所以没有发现这个问题。由于时区不同,比如Github使用了格林尼治标准时间,中国是东八时区,UTC+8,对于Jekyll来说是一个未来的时间,所以新文章在构建时是会被自动跳过的。

解决方法

  • 可以在_config.yml中设置timezone: Asia/Shanghai
  • 或者在_config.yml中设置future: true

当然也不止这一种原因会导致不显示新文章,还有一些其他原因的解决方法也给大家罗列出来了

  • 该文章未放置在 _posts 目录中。
  • 该文章的标题不正确。帖子应该被命名YEAR-MONTH-DAY-title.md
  • 该文章published: false 应该将其设置为true
  • 标题包含一个:字符。用&#58替换。
  • more…