编程语言
首页 > 编程语言> > php – Bolt:获取imagelist中项目的imageinfo

php – Bolt:获取imagelist中项目的imageinfo

作者:互联网

我是Bolt的新手,我正试图在记录的图像列表中获取图像的原始宽度. ‘image’的变量只包括文件名,标题,id,顺序和文件,因此image.width | image不做任何事情.我宁愿不使用缩略图(宽度,高度)方法,除非我可以使用它来访问图像的全尺寸尺寸,而不是裁剪版本.

https://docs.bolt.cm/record-and-records#imagelist

https://docs.bolt.cm/templatetags#imageinfo

有没有办法在imagelist循环中使用imageinfo()来获取宽度和高度,还是有更好的方法去做?谢谢你的帮助!

{% setcontent myprojects = 'projects' %}
{% for project in myprojects %}
    <div class="slide"> 
        {% for image in project.imagelist %}
            <img src="{{ image.filename|image }}" width="{{ image.width|image }}" height="{{ image.height|image }}">
        {% endfor %}
    </div>
{% endfor %}

解决方法:

我自己也遇到了同样的问题,并且一直在和irc讨论这个问题.由于imagelist返回一个数组,而不仅仅是一个文件名,你需要使用filename属性作为imageinfo的参数.

我在我的模板中执行以下操作,类似的方法应该可以解决您的问题:

{% for galleryImage in record.gallery %}
        <li>
                <a href="{{ imageinfo(galleryImage.filename).url }}" title="{{ galleryImage.title }}">
                {% if imageinfo(galleryImage.filename).landscape %}
                    <img src="{{ thumbnail(galleryImage, 0, 240) }}" class="landscape">
                {% elseif imageinfo(galleryImage.filename).portrait %}
                    <img src="{{ thumbnail(galleryImage, 0, 240) }}" class="portrait">
                {% else %}
                    <img src="{{ thumbnail(galleryImage, 240, 240) }}" class="square">
                {% endif %}
                </a>
        </li>
{% endfor %}

标签:php,twig,imagelist,bolt-cms
来源: https://codeday.me/bug/20190528/1170655.html