我正在使用GitHub Pages在Jekyll网站上工作,并且发现{% include myinclude.html %}
liquid在_includes和_layout文件中可以正常工作。但是,将元素添加到_config.yml中,例如author : myusername
并尝试在_layouts/default.html
或_includes/myinclude.html
中将它们用作{{ site.author }}
时,结果文本只是空白。需要注意的是,这些更改没有被提交或推送,我使用的是安装在Windows Linux子系统上的本地jekyll实例。
在我的实际页面中,除了_includes和_layout之外,站点变量也可以正常工作。为什么站点变量不显示?目前,我必须将实际值放回页面中。
答案 0 :(得分:1)
以上是预期的行为,对_config.yml的每次更改都需要重新启动开发服务器以处理新设置。
使用watch时无法重新读取配置文件,因为它 包含源和目标之类的内容。它只有在它可以工作 实际上就像多次运行jekyll构建
答案 1 :(得分:0)
假设对_config.yml
的编辑会自动更新,就像Jekyll对其他文件的编辑一样,我没有重新启动最初启动的jekyll实例。只需关闭Jekyll实例并启动它,以我的情况为bundle exec jekyll serve
,读取更新的配置文件,然后{{ site.variables }}
就会出现并正确显示。
对_config.yml
所做的任何更改都需要重新启动Jekyll实例。