Jekyll站点变量未在包含或布局中呈现
我在一个使用GitHub页面的Jekyll站点上工作,发现{%include myinclude.html%}liquid在_include和_布局文件中工作得很好。但是,当向_config.yml添加元素(如author:myusername)并尝试在_layouts/default.html或_includes/myinclude.html中作为{site.author}使用它们时,结果文本为空。要注意的是,这些更改没有提交或推送,我使用的是安装在Windows Linux子系统上的本地jekyll实例Jekyll站点变量未在包含或布局中呈现,jekyll,github-pages,liquid,Jekyll,Github Pages,Liquid,我在一个使用GitHub页面的Jekyll站点上工作,发现{%include myinclude.html%}liquid在_include和_布局文件中工作得很好。但是,当向_config.yml添加元素(如author:myusername)并尝试在_layouts/default.html或_includes/myinclude.html中作为{site.author}使用它们时,结果文本为空。要注意的是,这些更改没有提交或推送,我使用的是安装在Windows Linux子系统上的本地je
在我实际页面的_includes和_布局之外,站点变量工作得很好。为什么不显示站点变量?目前,我必须将实际值放回页面。假设对_config.yml的编辑会自动更新,就像Jekyll对其他文件的编辑一样,我没有重新启动最初启动的Jekyll实例。只需关闭Jekyll实例并重新启动它,在我的例子中使用bundle exec Jekyll service,读取更新后的配置文件,{{site.variables}}就如我所期望的那样出现并正确显示了
对_config.yml的任何更改都需要重新启动Jekyll实例。以上是预期的行为,对_config.yml的每次更改都需要重新启动开发服务器以处理新设置 使用watch时无法重新读取配置文件,因为它 包含源和目标之类的内容。只有当它 我们实际上就像是多次运行jekyll build
如果没有代码,调试将很困难。可以理解,尽管我刚刚发现问题是因为我没有重新启动Jekyll实例。对配置的更改不会像对其他每个文件的更改一样更新。