【问题标题】:Jekyll YAML galleryJekyll YAML 库
【发布时间】:2015-12-08 15:55:13
【问题描述】:

我有一个页面以网格布局显示我的项目,这些项目是从 yaml 文件中提取的。我不知道如何为各个页面提取正确的数据。

Yaml 文件 (portfolio.yaml) 的格式如下:

- name: gallery one
  url: "/portfolio/gallery-one.html"
  thumbnail: /images/thumbnail.png
  decription: "Lorem ipsum dolor sit amet, consectetur adipisicing elit." 
- name: gallery two
  url: "/portfolio/gallery-one.html"
  thumbnail: /images/thumbnail.png
  decription: "Lorem ipsum dolor sit amet, consectetur adipisicing elit."

网格代码(工作正常)

{% for project in site.data.portfolio %}
      {{ project.url }}
      {{ project.thumbnail }}
 {% endfor %}

【问题讨论】:

    标签: grid yaml jekyll


    【解决方案1】:

    你的数据文件配置并不容易。 像这样重新组织您的文件:

    gallery one:
      url: "/portfolio/gallery-one.html"
      thumbnail: /images/thumbnail.png
      decription: "Lorem ipsum dolor sit amet, consectetur adipisicing elit."
    
    gallery two:
      url: "/portfolio/gallery-one.html"
      thumbnail: /images/thumbnail.png
      decription: "Lorem ipsum dolor sit amet, consectetur adipisicing elit."
    

    然后,您可以制作一个可供所有项目页面使用的布局:

    _layouts/portfolio.html

    ---
    layout: default
    ---
    {% assign project = site.data.portfolio[page.project] %}
    <h1>{{ page.title }}</h1>
    <p>{{ project.decription }}</p>
    {{ content }}
    

    然后一个项目页面是这样的:

    gallery-one.html

    ---
    layout: portfolio
    title: Gallery one
    project: gallery one
    ---
    additional content can go here
    

    如果你有很多项目,你可以看看jekyll collections,它可以自动生成页面。

    【讨论】:

      猜你喜欢
      • 2015-09-25
      • 1970-01-01
      • 2017-08-19
      • 2015-11-23
      • 1970-01-01
      • 1970-01-01
      • 2012-09-27
      • 2016-02-19
      • 1970-01-01
      相关资源
      最近更新 更多