如何使用static_files创建具有动态名称的文档链接?

时间:2019-04-13 14:57:46

标签: jekyll liquid

我有一个随时间变化的文件(简历),名称也不同(例如“ resume-january-2019.pdf”,“ resume-march-2019.PDF”等)。

借助Jekyll和Liquid,我如何使用static_files功能链接到此文档,而不必更改链接本身?

我找到了循环遍历图像的示例,但是由于它只是一个文件,所以这不是我想要的。

我已经在_config.yml中定义了我的静态文件

defaults:
  - scope:
      path: "assets/files/resume"
    values:
      resume: true

我正在寻找类似的东西

<a href="{{ site.static_files.resume.path }}">Resume</a>

但是href仍然为空

我也尝试过

{% assign resume = site.static_files | where: "resume", true %}
<p>Please read my <a href="{{ resume.path }}">Resume</a>.</p>

href仍然为空

我希望是

<p>Please read my <a href="assets/files/resume/resume-january-2019.PDF">Resume</a>.</p>

当我将简历替换为另一个名称的文件时,应该是

<p>Please read my <a href="assets/files/resume/resume-march-2019.pdf">Resume</a>.</p>

1 个答案:

答案 0 :(得分:0)

通过使用where_exp过滤静态文件,您应该能够执行类似的操作。如果您计划一次在该文件夹中包含多个简历文件,则可能需要基于文件的修改后的日期值添加一个附加的sort过滤器。没有排序的示例:

{%- assign resume = site.static_files | where_exp: "file", "file.path contains 'files/resume'" -%}
<p>Please read my <a href="{{ resume[0].path }}">Resume</a>.</p>

Jekyll官方文档解释了您可以在静态文件条目here上访问的所有值以及可以应用here的过滤器。