【问题标题】:Which folder should I put my static files in Jekyll?我应该将我的静态文件放在 Jekyll 中的哪个文件夹?
【发布时间】:2016-04-06 10:48:50
【问题描述】:

当我在看文档时。我看到了以下文档结构,

.
├── _config.yml
├── _drafts
|   ├── begin-with-the-crazy-ideas.textile
|   └── on-simplicity-in-technology.markdown
├── _includes
|   ├── footer.html
|   └── header.html
├── _layouts
|   ├── default.html
|   └── post.html
├── _posts
|   ├── 2007-10-29-why-every-programmer-should-play-nethack.textile
|   └── 2009-04-26-barcamp-boston-4-roundup.textile
├── _data
|   └── members.yml
├── _site
├── .jekyll-metadata
└── index.html

当我需要在帖子中添加图片时。我应该把图像放在哪里使用site.static_files 提到的here 的功能(文档中的静态文件部分)?这样我就可以直接使用file.pathfile.modified_time 这样的变量。

以前当我使用 Jekyll 2.x 时,我通过创建自己的资产目录来做类似下面的事情。

<link rel="stylesheet" href="{{ "/assets/css/index.css" | prepend: site.url }}">

【问题讨论】:

    标签: jekyll


    【解决方案1】:

    假设您的图库图片的结构类似于

    -img
      -gallery
        -image1.png
        -image2.png
        etc.
    

    您可以像这样在集合或页面中访问它们:

    {% for image in site.static_files %}
    {% if image.path contains 'img/gallery' %}
        <p>{{image.path}} - {{image.modified_time}}</p>
        <img src="{{site.baseurl}}{{image.path}}">
    {% endif %}
    {% endfor %}
    

    这会遍历所有静态文件并检查某个路径(本例中为img/gallery)。

    您可以访问该文件的静态文件元数据。 (在本例中我将其命名为“图像”,但您可以在 for 关键字之后随意命名)。

    我认为将这样的内容放在博客文章中并没有太大意义,而是放在pagecollection 中。

    【讨论】:

      【解决方案2】:

      静态文件可以放置在站点目录中不是某种集合的任何位置。所以不在以“_”开头的目录中。使它成为静态的原因是它没有 YAML 前端。

      我建议创建一个名为“assets”或“images”的目录并将它们放在其中。

      编辑:

      你想用这个功能做什么?

      【讨论】:

      • 我正在尝试创建一个图片库
      • 你将如何创建这个画廊?使用 for 循环?
      • 是的,这就是我打算做的。
      • 好的,做了更多的挖掘。您可以将文件放在任何不是某种集合的目录中。 id 建议有一个资产文件夹。将编辑答案。
      猜你喜欢
      • 2019-12-24
      • 2023-03-26
      • 2022-10-04
      • 1970-01-01
      • 1970-01-01
      • 2013-03-11
      • 1970-01-01
      • 1970-01-01
      • 2011-11-24
      相关资源
      最近更新 更多