【问题标题】:Jekyll thumbnail plugin with Liquid tag带有 Liquid 标签的 Jekyll 缩略图插件
【发布时间】:2014-01-10 17:40:13
【问题描述】:

我正在尝试通过 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&lt; %}

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

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

【问题讨论】:

  • 你有没有想过这个问题?我认为放置 photo.path 会起作用...
  • @KevinChen 不幸的是我没有,尽管我认为我有一个解决方法。让我检查一下。
  • @KevinChen 你知道吗,我不知道。对不起
  • 如果其他人发现了这个,我制作了一个修改版本的缩略图,如果磁盘上不存在路径,它会将路径作为变量查找。魔术发生在对look_up 的调用中。 github.com/kevin1/jekyll-thumbnailer/blob/master/thumbnail.rb
  • 其实我会把它变成一个答案

标签: ruby jekyll liquid jekyll-extensions


【解决方案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

【讨论】:

    猜你喜欢
    • 2012-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 2012-03-17
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    相关资源
    最近更新 更多