我正在尝试创建一个内容类型的视图块,并使用该节点的图像字段值作为块模板文件中div的背景图像。但我无法在twig文件中获取图像文件URL,以便可以将其用作背景图像。有没有办法在twig模板中获取该字段的原始值?
答案 0 :(得分:1)
使用Paragraphs轻松完成。启用并创建一个段落,随意调用它(阻止背景图像)。你需要2个字段,一个用于背景图像,一个用于块参考。然后,您可以添加一个包含2个区域的布局,一个用于背景图像,另一个用于块。在管理显示中更新它。然后,您需要更新基本页面并添加段落字段,以便您可以选择在页面上使用它。
否则,请尝试使用此代码获取图像路径:
{{ file_url(element['#object'].field_name.0.entity.uri.value) }}
只需将“field_name”更改为图片的计算机名称即可。
答案 1 :(得分:1)
我在Drupal 8中解决了:
[{"ID":"1","INMILLIS":"1474045680982","OUTMILLIS":"1474046580983","COMPLETE":"1"}]
答案 2 :(得分:0)
类似我试图在树枝模板中使用颜色字段的原始字段值。首先我使用了错误的预处理器,但后来我尝试了hook_preprocess_page。这对我有用。
$variables['bgcolor'] = $variables['node']->field_bgcolor->color;
因此,如果您想在page.html.twig中使用您的变量,请使用
function yourtheme_preprocess_page(&$variables) {
$image_id = $variables['node']->field_yourimagefield->target_id;
$image_file = file_load($image_id);
$image_public_uri = $image_file->getFileUri();
$variables['image_url'] = file_create_url($image_public_uri);
// var_dump($variables['image_url']);
}
也许你可以缩短它,但这样它更具可读性。
之后(清除缓存后),您可以在树枝模板
中访问您的值{{ image_url }}