Jekyll 站点变量未在包含或布局中呈现

Jekyll site variables not rendering in includes or layouts

我正在使用 GitHub 页面开发 Jekyll 站点,发现 {% include myinclude.html %} liquid 在 _includes 和 _layout 文件中工作得很好。但是,当向 _config.yml 添加元素(例如 author : myusername 并尝试在 _layouts/default.html_includes/myinclude.html 中将它们用作 {{ site.author }} 时,生成的文本只是空白的。请注意,这些更改未提交或推送,我正在使用安装在 Linux 子系统上的本地 jekyll 实例 Windows。

在我的实际页面中,除了 _includes 和 _layout 之外,站点变量工作得很好。为什么不显示站点变量?目前我必须将实际值放回页面中。

假设对 _config.yml 的编辑会自动更新,就像 Jekyll 对其他文件的编辑所做的那样,我没有重新启动我最初启动的 jekyll 实例。只需关闭 Jekyll 实例并重新启动它,在我的例子中使用 bundle exec jekyll serve,读取更新的配置文件,{{ site.variables }} 出现并按我预期正确显示。

_config.yml 的任何更改都需要重新启动 Jekyll 实例。

以上是预期的行为,对 _config.yml 的每次更改都需要重新启动开发服务器以处理新设置

The configuration file can't be re-read when using watch, because it contains things like source and destination. It could only work if it were actually like running jekyll build multiple times

source