Как добавить дата атрибут к картинке?

Главные вкладки

Аватар пользователя towi towi 27 июля 2022 в 2:33

На сайте сейчас есть картинки которые добавляются не правильно к продуктам(Entity Product).
Я сделал так как нужно, создал Media type c названием Media Entity Image добавил нужные поля(color id, image id). И в Entity Product создал поле reference на Media Entity Image.

В images-block.html, нужно убрать картинки добавлены не правильным путем и добавить правильным:

Мне нужно добавить дата атрибут data-color и передать в него значение из поля field_color_id c Media Type-а у которого название Media Entity Image.

Шаблон image.html.twig каждой отдельной картинки которая уже правильно добавлена выглядит так:

<img loading="lazy" {{ attributes }} />

В developers tools браузера правильно добавлена картинка выглядит так:

<div class="--field--field-media-image">
  <!-- BEGIN OUTPUT from 'themes/custom/particle/apps/drupal-default/particle_theme/templates/' -->
  <img loading="lazy src="/sites/default/files/styles...." width="300" height="550" typeof=foaf:Image>
</div>

В конечном итоге я должен увидеть в developers tools браузера этот атрибут возле <img> со значением.

Лучший ответ

Аватар пользователя ivnish ivnish 27 июля 2022 в 12:09
1

Теоретически: в препроцессе поля image нужно получить нужное значение из поля field_color_id и записать его в рендер массив поля image, чтобы это значение ушло в шаблон

Комментарии

Аватар пользователя towi towi 27 июля 2022 в 10:46

Не через Drupal way. Там если открыть картинку ПКМ->Open image in new tab она огромная на весь экран.
А я сделал image style для нее, в Media type c названием Media добавил view mode где для поля картинки выбран новый image style.

Я возможно заплутал вас, хотел просто написать больше деталей, но если коротко то мой вопрос будет звучать так:
Как добавить дата атрибут data-color к image и передать в него значение из поля field_color_id из Media Type c названием Media Product Image?

Аватар пользователя ivnish ivnish 27 июля 2022 в 12:09
1

Теоретически: в препроцессе поля image нужно получить нужное значение из поля field_color_id и записать его в рендер массив поля image, чтобы это значение ушло в шаблон