Как получить изображение конкретного продукта в файле shopify liquid?

#shopify #liquid

Вопрос:

Можно ли позвонить или получить изображение конкретного продукта в файле shopify liquid?

Я имею в виду, возможно ли получить конкретное изображение с помощью дескриптора или идентификатора. Есть ли у жидкости метка фильтра для этой цели.

С помощью URL-адреса ресурса это возможно.

{{ 'my-image.png' | asset_url }}

Но я просто хотел знать, возможно ли это с изображениями продуктов.

Что-то вроде этого: {{ product.images | product_img_url: 'red-xl-vertical-product' }}

Надеюсь, ты понял это.

Вместо того, чтобы зацикливать и отображать все изображения продукта, у меня есть используемый случай, когда на странице продукта должно быть вызвано конкретное изображение продукта.

Существует ли API для получения изображения конкретного продукта по идентификатору или дескриптору, а не по индексу изображения в product.liquid файле?

Или кто-нибудь может предложить альтернативы, кроме хранения их в папке «Активы»?

Это то, что я пробовал. Но не работает! {{ product.images | where: 'id', '1785281087' | img_url }}

Комментарии:

1. Возможно ли это с помощью Shopify liquid?

2. Это возможно!

3. Спасибо за это.

Ответ №1:

Ты прав! Просто небольшое изменение заставит его работать.

Что вы пропустили, так это то, что забыли присвоить его переменной, чтобы фильтр where работал!

Этого можно достичь с помощью следующего трюка:

сначала вам нужно назначить носитель продукта переменной

{% assign images = product.media | where: "alt", "primary-image" %}

тогда вы сможете получить img_tag

 <div>
  {{ images[0] | img_tag }}
</div>
 

Вот полный фрагмент текста.

 {% assign images = product.media | where: "alt", "main-image" %}

<div>
  {{ images[0] | img_tag }}
</div>
 

Комментарии:

1. Можно ли добавить дополнительные key: value пары к product.media объекту?

2. Не уверен насчет этого. Но вы определенно можете добавить metafields в продукт, коллекцию и варианты продуктов!