Mam szablon gałązki dla niestandardowego typu zawartości. I jest w stanie dobrze renderować większość pól, ale nie jestem w stanie wydrukować pola obrazu z wieloma obrazami.
węzeł - zawiera mycontenttype.html.twig
{{ content.field_mytitle }}
{{ content.field_myheaderimage }}
<div class="row expanded">
{% for galleryimage in content.field_gallery_images %}
<div class="gallery-image-item"> {{ galleryimage }} </div>
{% endfor %}
</div>
content.field_mytitle i content._field_myheaderimage dobrze wyświetla tytuł i obraz. Ale kiedy używam pętli for
{% for galleryimage in content.field_gallery_images %}
<div class="gallery-image-item"> {{ galleryimage }} </div>
{% endfor %}
Otrzymuję błąd
Exception: Object of type Drupal\node\Entity\Node cannot be printed. in Drupal\Core\Template\TwigExtension->escapeFilter() (line 443 of core/lib/Drupal/Core/Template/TwigExtension.php).
Kiedy po prostu używam
{{ content.field_gallery_images }}
Jest w stanie wyprowadzać każdy obraz, ale nie pozwala mi to zawijać każdego elementu w div i dodawać zawartości do każdego.
Odpowiedzi:
Wydrukuj pole obrazu w szablonie węzła, jak każde inne pole:
A następnie użyj gałązki pola, aby przejść przez wiele elementów pola:
field - field-gallery-images.html.twig
źródło
Na D8 mogłem zrobić pętlę foreach na moich obrazach, aby wygenerować karuzelę.
źródło