木材图像 - 使用自定义尺寸



在我对 https://github.com/timber/timber/提出问题之前将其发布在这里

我想显示具有自定义大小的 ACF 图像,例如:

<img src="{{ image.sizes.medium }}" width="{{ image.sizes.medium-width }}" height="{{ image.sizes.medium-height }}" alt="{{ image.alt }}" title="{{ image.title }}"> 

这是image数组

Array
(
[id] => 473
...
[width] => 768
[height] => 400
[sizes] => Array
(
[thumbnail] => http://assets.url.com/uploads/image-150x150.jpg
[thumbnail-width] => 150
[thumbnail-height] => 150
[medium] => http://assets.url.com/uploads/image-300x300.jpg
[medium-width] => 300
[medium-height] => 300
[medium_large] => http://assets.url.com/uploads/image-768x400.jpg
[medium_large-width] => 768
[medium_large-height] => 400
...
)
)

但是当然,破折号会破坏东西,所以我不能。有没有更正确的方法来做到这一点,或者我应该在 github 中将其作为一个问题发布?或者也许这是一个 ACF 问题?感谢任何可能为我指明正确方向的帮助。

当您在 Twig 中有一个数组时,使用点表示法只是访问其内容的一种方法。您还可以通过所谓的下标符号访问内容,其工作原理与在 PHP 中相同:

<img src="{{ image.sizes.medium }}"
width="{{ image.sizes['medium-width'] }}"
height="{{ image.sizes['medium-height'] }}"
alt="{{ image.alt }}" title="{{ image.title }}">

这仅适用于数组。如果对象的属性名称中有破折号,则必须使用attribute().以下是 Twig 文档中的示例:

{{ attribute(foo, 'data-foo') }}

最新更新