你能从另一个文件中的变量定义Jekyll配置默认值吗?

时间:2017-02-24 07:10:37

标签: jekyll

我尝试这样做是因为我使用的是CMS,用户可以编辑数据文件来更改页面而不是_config.yml。 我想知道是否可以从数据文件中引用变量并将此引用放在_config.yml中。

这是我尝试做的一个例子;

数据文件(/_data/site-data.yml)

navigation:
  navigation_colour: '#462634'

配置文件(/_config.yml)

defaults:
  -
    values:
      navigation:
        navigation_colour: site.data.site-data.navigation.navigation-colour

有类似的可能吗? 谢谢!

2 个答案:

答案 0 :(得分:1)

您可以至少在一个配置文件变量中进行分配,我尚未在多个文件中进行过测试。

Variables inside YAML

YAML,hello将成为Greetings earthling!

something: &hello Greetings earthling!
myref: *hello

MARKDOWN

{{ site.data.samplelist.myref }}

答案 1 :(得分:0)

Jekyll不解析 _Config.yml 中的变量。但是,在您的博客中,您可以使用像{{site-data.navigation.navigation-color}}这样的液体标签。请参阅here

如果它要求替换 _Config.yml 中的变量,那么请使用带有grunt的自定义或标准替换插件。如此有效的grunt构建任务将首先在_Config.yml中执行令牌替换,然后执行 jekyll build