Twig 如何在grav中使用细枝过滤图像列表
我正在grav的侧边栏中插入赞助商图像列表,只想显示以Twig 如何在grav中使用细枝过滤图像列表,twig,grav,Twig,Grav,我正在grav的侧边栏中插入赞助商图像列表,只想显示以赞助商\uuu开头的图像 目前,我的代码在页面文件夹中添加任何图像 base.html.twig: <div class="sidebar-right-content"> <!-- insert R sidebar images here --> <div class="sponsor-image"> <h3>Sponsors</h3> {% for image
赞助商\uuu
开头的图像
目前,我的代码在页面文件夹中添加任何图像
base.html.twig:
<div class="sidebar-right-content">
<!-- insert R sidebar images here -->
<div class="sponsor-image">
<h3>Sponsors</h3>
{% for image in page.media.images %}
<br>{{ image.html }}
{% endfor %}
</div>
有没有办法在这种情况下使用过滤器?试试:
{%image in page.media.images | contains('sandor')%}
在测试了一些选项后,我找到了一种有点不雅观的方法来解决这个问题。
要理解的主要内容是page.media.images
返回一个数组,因此我们不能将其作为字符串过滤。
所以我只是嵌套了一个匹配语句。我想知道是否有一个单一的解决方案
{% for image in page.media.images %}
{% if image.html matches '/.*sponsor.*$/' %}
<br>{{ image.html }}
{% endif %}
{% endfor %}
{%用于page.media.images%中的图像]
{%if image.html与'/.*赞助商。*$/'%}
{{image.html}
{%endif%}
{%endfor%}
grav似乎不喜欢这种语法,它抛出了一个错误:0-在第96行的“partials/base.html.twig”中呈现模板时抛出了一个异常(“strpos()期望参数1为字符串,给定数组”)。非常感谢您的输入!对我来说,.html
方法不适用于正则表达式比较。然而,当我把它改为.url
,它就成功了。
{% for image in page.media.images %}
{% if image.html matches '/.*sponsor.*$/' %}
<br>{{ image.html }}
{% endif %}
{% endfor %}