
Работа с метаполями
Иногда при работе с Shopify приходится сталкиваться с тем, что метаполями у товара помимо стандартного поля с описанием и медиафайлами, должны быть дополнительные поля. Это может быть поле с размерами или ссылки на портфолио и т.д. Решить эту проблему можно при помощи метаполей.

Метаполя можно создавать
вручную, что не очень удобно

Мы рассмотрим приложение
Metafields Guru. Оно бесплатно
позволяет работать с метаполями.
*Таких приложений много, они не сильно отличаются в функционале, есть платные и условно бесплатные.
Metafields Guru позволяет добавлять метаполя коллекциям, продуктам и вариантам, страницам и.д.
Как добавить товару метаполе?

Нажмем на кнопку “Products & Variants”.
Перед нами откроется список товаров, которые добавлены
в Ваш магазин.
Основным ограничением Metafields Guru является то, что
возможность массового добавления метаполей товарам
доступна за “кредиты”, поэтому мы сделаем это поштучно
Для этого выбираем необходимый товар и нажимаем кнопку
“Create metafield”.
Перед нами появится нечто подобное:
Состав метаполя:

Пространства имен
(namespace)

Kлюча
(key)

Значения и описания
(необязательно)
*Пространство имен используют для логической группировки различных метаполей.
Метаполя хранят значения следующих типов:
- integer
- string
- json_string
Разберем на примере
К примеру, создадим следующие метаполя:

После этого Вы сможете в product.liquid выводить эти метаполя следующими строчками:
{% assign instructions = product.metafields.instructions %}
{% assign key = ‘Wash’ %}
<ul>
<li>Wash: {{ instructions[key] }}</li>
<li>Wash: {{ instructions[‘Wash’] }}</li>
<li>Wash: {{ instructions.Wash }}</li>
</ul>
И на странице товара отобразятся три одинаковых надписи (мы
их вызвали, используя разные три разных способа):
Wash: Cold
Wash: Cold
Wash: Cold
Вот таким способом можно создать дополнительные поля у товаров и в дальнейшем использовать их в своих нуждах. К примеру, в JSON-sting можно хранить целую цепочку значений и выводить их. Например, как здесь, где у человека есть портфолио, содержащее название категории, название проекта и ссылку на него:

Видеоматериалы по теме: