它不一定是Jekyll使用的东西。
基本上我正在创建一个将使用灯箱的图库。我想从目录(_site \ images \ gallery)加载要显示的灯箱及其缩略图(待确定和创建)的所有图像。
最好的方法是什么?我已经设置并测试了灯箱(没有缩略图)。
提前致谢。
答案 0 :(得分:5)
Jekyll没有办法“列出文件夹的内容”。
你可以通过使用yaml前端做一个非常近似的事情。
在“图库页面”中,包含一个包含图像文件名的部分:
---
images:
- a.jpg
- b.jpg
- c.jpg
<other properties, like title, etc>
---
然后,当您想要列出图像时,使用循环生成链接。我不熟悉lighbox的图像语法,但它可能看起来像这样:
<ul class="something">
{% for image in page.images %}
<li class="something">
<a rel="something" class="something" href="/path/to/images/dir/{{ image }}" />
</li>
{% endfor %}
</ul>
(当我对某些事情不确定时,我已经在每个地方放了“东西”。你可能需要完全删除一些“事情”。你必须修改/path/to/images/dir/
到哪里你的照片是)
将html更改为使用灯箱后,添加新图像的唯一方法是:a)将其放入images目录中; b)编辑图库页面,并在中引入新图像名称清单。
这不像列表“自动生成”那么方便,但它非常接近。
答案 1 :(得分:1)
在Jekyll的当前目录中列出jpg文件可以这样做:
{% for file in site.static_files %}
{% assign pageurl = page.url | replace: 'index.html', '' %}
{% if file.path contains pageurl %}
{% if file.extname == '.jpg' or file.extname == '.jpeg' or file.extname == '.JPG' or file.extname == '.JPEG' %}
<img src="{{ file.path }}" />
{% endif %}
{% endif %}
{% endfor %}
有关此解决方案的更多信息,请访问:http://jekyllrb.com/docs/static-files/。我为Jekyll创建了一个灯箱扩展程序,列在我的页面Jekyll without plugins上。看看吧!
答案 2 :(得分:1)
尝试https://github.com/simoarpe/azores-image-gallery
免责声明:我是作者。
我已经尝试了一些在Github上已经可用的项目,但是大多数项目都已经停产或部分工作了,最后,我决定从周围发现的一些好的方面开始自己实现一些东西。
结果为Azores Image Gallery。
有关更详细的说明,请检查README file。
答案 3 :(得分:0)
我喜欢Jekyll插件。
尝试其中之一:Jekyll Gallery,Jekyll Gallery Generator或Folder Gallery。
查看每个插件的Ruby文件,并修改生成的图像标签以包含灯箱类。这应该够了吧。不要忘记将lightbox css文件包含在默认模板页面中。