好吧,我发誓我根本没有改变任何设置。
我设置了我的Jekyll博客,之前它确实有效。
每次我想写新内容时,我只需复制旧帖子文件,将其重命名为当前日期并修改其中的内容。
但是仅仅一天,在我将新内容推送到Github之后,我收到了一封电子邮件,注意到我
master
分支的页面构建失败,并出现以下错误:
值'nil'被传递给与日期相关的过滤器,该过滤器需要/_layouts/post.html
或其中一个布局中的有效日期。有关详细信息,请参阅https://help.github.com/articles/page-build-failed-date-is-not-a-valid-datetime/ 有关Jekyll故障排除的信息,请参阅:
https://help.github.com/articles/troubleshooting-jekyll-builds
首先,我没有修改/_layouts/post.html
。其次,我不在YAML中使用日期信息,因为Jekyll已经使用强名称要求,如YY-MM-DD-title.md。
我只是一个想写一些有趣但却对IT技术知之甚少的人。我搜索了Jekyll文档,并阅读StackOverflow上的帖子,如下所示:
但由于我的post.html
文件内容与该帖子不同,我不知道我能做些什么。
我使用bundle exec Jekyll build
在我的Mac上构建它,它只显示与电子邮件相同的信息
$ bundle exec jekyll build 配置文件:> /Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io/_config.yml 资料来源:/Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io 目的地:> /Users/zhanglidong/Documents/ASyncFiles/jetorz.github.io/_site 增量构建:已禁用。启用--incremental
生成...
Liquid Exception:无效日期:'nil'不是有效的日期时间。在/_layouts/post.html中 错误:您的网站可能无法建立:
------------------------------------
无效日期:'nil'不是有效的日期时间。
我的GitHub回购:https://github.com/jetorz/jetorz.github.io
我的jekyll博客:https://jetorz.github.io/
我该如何解决?有谁想帮我怜悯我? :(
答案 0 :(得分:0)
像上面提到的回答一样,
我重新检查了我提供的链接:
if
部分之外有<time>
块。
我对Liquid不太了解,
但我认为值得尝试。
所以我将此if
添加到我的post.html
,如下所示
{% if page.date %}
<time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}
{{ page.date | date: date_format }}
</time>
{% endif %}
我不确切知道它是什么,
但确实有效:)
现在我可以发布我的博客了。