带有Liquid标签的Jekyll缩略图插件

时间:2014-01-10 17:40:14

标签: ruby jekyll liquid jekyll-extensions

我正在尝试使用Jekyll的数据文件循环。我的代码如下:

<div class="row">
  <div class="12 columns">
    <ul class="clearing-thumbs" data-clearing>
      {% for photo in site.data.unusable_photos %}
        <li><a href="{{ photo.path }}" class="th"><img class="album-photo" data-caption="{{ photo.caption }}" src="{{ photo.thumb }}"></a></li>
      {% endfor %}
    </ul>
  </div>
</div>

但是,我为每张照片手动生成缩略图变得越来越困难。我找到了Jekyll插件thumbnail,但我不知道如何使它符合我的需要。

自述文件显示了此示例:{% thumbnail /path/to/local/image.png 50x50< %}

如何将{{ photo.path }}与Jekyll插件一起使用,以便我不必手动输入文件名?

编辑:也许我可以编辑插件以便它可以访问网站变量?

1 个答案:

答案 0 :(得分:1)

我制作了一个修改后的缩略图版本,如果它不存在于磁盘上,它会查找作为变量路径的内容。神奇发生在对look_up的调用中。

def look_up(context, name)
  lookup = context

  name.split(".").each do |value|
    lookup = lookup[value]
  end

  lookup
end

然后在render(context)中,致电look_up

source = look_up context, source unless File.readable?(source)

完整代码:https://github.com/kevin1/jekyll-thumbnailer/blob/master/thumbnail.rb