环境

build(或 serve)参数中,你可以指定 Jekyll 环境和值。然后,该构建将在内容中的任何条件语句中应用此值。

例如,假设你在代码中设置了此条件语句

{% if jekyll.environment == "production" %}
   {% include disqus.html %}
{% endif %}

当你构建 Jekyll 网站时,除非你在构建命令中同时指定 production 环境(如下所示),否则 if 语句内的内容将不会运行

JEKYLL_ENV=production jekyll build

指定环境值允许你仅在特定环境中提供某些内容。

对于 JEKYLL_ENV,其默认值为 development。因此,如果你从构建参数中省略 JEKYLL_ENV,则默认值将为 JEKYLL_ENV=development。位于 {% if jekyll.environment == "development" %} 标记内的任何内容都将自动出现在构建中。

你的环境值可以是任何你想要的值(不仅仅是 developmentproduction)。你可能想要在开发环境中隐藏的一些元素包括 Disqus 评论表单或 Google Analytics。相反,你可能希望在开发环境中显示“在 GitHub 中编辑我”按钮,但在生产环境中不包含它。

通过在构建命令中指定选项,您在从一个环境移动到另一个环境时无需更改配置文件中的值。

要根据环境切换部分配置设置,请使用构建命令选项,例如 --config _config.yml,_config_development.yml。后面文件中的设置将覆盖前面文件中的设置。