我的内容类型包含 field_gallery 字段多个图片。 我想在我的twig文件中打印所有这些图像: page - front.html.twig 。所以我想在我的首页中获取这些图像,而不仅仅是在他们的节点中。到目前为止,我可以使用
将它们放在节点中{{ file_url(node.field_image.entity.fileuri) }}
但不是其他地方(当然,因为它的使用节点)。这可能吗?
我应该为页面创建预处理器功能吗?对此有何指导?
答案 0 :(得分:1)
是的,这是可能的。这个问题有两个子任务:
1)创建页面 - front.html.twig文件 要创建此twig文件,您必须克隆文件,即page.html.twig并使用page重命名 - front.html.twig
2)获取图像字段的原始值 您需要更新我的.theme文件中的代码:
function THEMENAME_preprocess_node(&$variables) {
if ($variables['node']->field_image->entity) {
$variables['image_url'] = $url = entity_load('image_style', 'medium')->buildUrl($variables['node']->field_image->entity->getFileUri());
}
}
然后在页面 - front.html.twig文件中我有:
{% for item in image_url %}
<div class="featured-thumb">
<img src="{{ item }}"/>
</div>
{% endfor %}