簡體   English   中英

Jekyll/Liquid 用 _data 中的額外數據合並頁面

[英]Jekyll/Liquid mergin a page with extra data from _data

我正在嘗試將頁面與額外數據合並。

如果我按照以下方式進行操作,現在有 output。

{% assign extra = site.data.extra | where_exp: "search", "search.stg_kurz == page.stg_kurz" %}
  {{ extra.teaser | markdownify }}

但是如果我這樣做,有一個output,但是為什么呢?

{% assign extras = site.data.extra | where_exp: "search", "search.stg_kurz == page.stg_kurz" %}
  {{ extras.teaser | markdownify }}
  {% for extra in extras %}
    {{ extra.teaser | markdownify }}
  {% endfor %}

始終只有一個數據集與 page.variable 匹配

任何人都可以提供幫助或有一些提示嗎?

謝謝

我自己的解決方案看起來像

{% assign stg = site.data.3478_fachrichtung | where_exp: "search", "search.stg_kurz == page.stg_kurz" %}
  {% assign extras = site.data.extra | where_exp: "search", "search.stg_kurz == page.stg_kurz" %}
  {% assign extra = stg | concat: extras %}

不完美,但它對我有用。

site.data.3478_fachrichtung是 page.data

有沒有人更好的解決方案?

{% assign extra = site.data.extra | where_exp: .... %} {% assign extra = site.data.extra | where_exp: .... %}返回一個包含(通常)一個元素的數組。 您只需要在打印之前使用first數組過濾器來抓取它。

{% assign extras = site.data.extra | where_exp: "search", "search.stg_kurz == page.stg_kurz" %}
{% assign extra = extras.first %}
{{ extra.teaser | markdownify }}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM