gpt4 book ai didi

drupal-8 - Drupal 8 - 在 Twig 或预处理文件中获取图像宽度/高度/alt/等

转载 作者:行者123 更新时间:2023-12-05 00:19:25 24 4
gpt4 key购买 nike

我试图在预处理文件中获取图像的宽度和高度。

我设法使用在管理中的媒体/样式中定义的样式生成图像,但我无法呈现生成图像的宽度和/或高度(有些人会说我应该在 Twig 文件中对其进行硬编码,但是我实际上对学习如何获取稍后需要的元素很感兴趣:))

这是我用来获取某种内容类型的图像的方法:
假设我的字段的机器名称是“field_image”,我的内容类型是“article”;

if (!empty($node->field_image->entity->getFileUri())) {
$style = ImageStyle::load('medium');
$image = $node->field_image->entity;
$variables['image'] = [
'src' => $style->buildUrl($image->getFileUri())
];
}

之后,我需要在 node--article.html.twig 中做的是:
<img src="{{ image.src }}" />

但我也想获得宽度和高度属性。我怎样才能做到这一点?

最佳答案

if ($node = \Drupal::routeMatch()->getParameter('node')) {
if ($node->hasField('field_image')) {
$imageField = $node->field_image;
$properties = $imageField->getProperties();
}
}

$properties 将保存您要求的属性数组。
$imageField 是 Drupal\image\Plugin\Field\FieldType\ImageItem 类的一个实例。您可以在此处阅读文档 https://api.drupal.org/api/drupal/core%21modules%21image%21src%21Plugin%21Field%21FieldType%21ImageItem.php/class/ImageItem/8.2.x

关于drupal-8 - Drupal 8 - 在 Twig 或预处理文件中获取图像宽度/高度/alt/等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36087896/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com