Создайте тему Shopify с движком Liquid

Автор: Peter Berry
Дата создания: 14 Июль 2021
Дата обновления: 13 Май 2024
Anonim
Что такое Shopify? Разработка тем на Shopify. Shopify разработчик. Что нужно знать?
Видео: Что такое Shopify? Разработка тем на Shopify. Shopify разработчик. Что нужно знать?

Содержание

В течение последних нескольких недель я создавал тему Shopify для Viewport Industries, компании, которую мы с Эллиотом Джеем Стоксом основали в прошлом году. Мы выбрали Shopify по нескольким причинам:

  1. Это позволяет нам продавать как цифровые, так и физические продукты.
  2. Он полностью размещен, поэтому вам не о каких серверах нужно беспокоиться.
  3. Он поддерживает ряд платежных шлюзов, которые прекрасно интегрируются с нашим банком.
  4. Он основан на теме, что означает, что мы можем легко повторно использовать HTML, CSS и JavaScript нашего существующего сайта.

Shopify использует шаблонизатор под названием Liquid для вывода данных из вашего магазина в ваши шаблоны. Liquid - это, пожалуй, один из ингредиентов темы Shopify, который вы раньше не использовали, и это может отпугнуть. Но хорошая новость в том, что начать с этого не так уж и сложно.

Если вы когда-либо использовали Smarty, ERB или Twig, дальнейшее будет вам знакомо. Если нет, не волнуйтесь: нужно просто выучить несколько простых правил. После того, как вы добавите навыки работы с Liquid в свой инструментарий веб-разработки, вы сможете в кратчайшие сроки приступить к созданию тем для клиентов.


Файлы и папки тем

Темы Shopify - это не что иное, как набор файлов (HTML-файлы с расширением .liquid, CSS, JS, изображения и т. Д.) И папок. Темы могут выглядеть и работать как угодно: ограничений действительно нет. Вот основная структура темы:

  • ресурсы
  • config
  • макеты
  • theme.liquid
  • фрагменты
  • шаблоны
  • 404. жидкость
  • article.liquid
  • blog.liquid
  • cart.liquid
  • collection.liquid
  • index.liquid
  • page.liquid
  • product.liquid
  • search.liquid

С помощью этих файлов вы можете создавать самые простые темы. Конечно, вы, вероятно, захотите добавить немного CSS, JavaScript и несколько изображений. Вы бы поместили их в папку с ресурсами. (Стоит отметить, что в настоящее время вам не разрешены подпапки в папке с ресурсами.)

Чтобы узнать больше о том, как работают темы, а также о папках config и snippets, я бы рекомендовал прочитать Theme from Scratch и Theme Settings на Shopify Wiki.

Кроме того, вы можете подписаться на бесплатную партнерскую программу, создать тестовый магазин и проверить одну из множества бесплатных тем, доступных в админке вашего тестового магазина - просто перейдите в редактор тем, расположенный в меню «Темы».


Сопоставление URL-адресов с шаблонами

Темы Shopify работают путем сопоставления текущего URL-адреса с определенным шаблоном. Например, если мы просматриваем продукт со следующим URL-адресом ...

http://www.unitedpixelworkers.com/products/indianapolis

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

В дополнение к тому, что Shopify знает, какой шаблон отображать по отношению к текущему URL-адресу, он делает доступным нам ряд очень конкретных переменных. Они известны как «переменные шаблона» и позволяют нам отображать данные в наших шаблонах.

Например, в нашем шаблоне product.liquid у нас есть доступ к метко названному продукт Переменная. Это означает, что мы можем вывести название, описание, цену и доступность нашего продукта в нашем шаблоне. Мы будем использовать комбинацию переменных Liquid и шаблонов, чтобы заполнить наши шаблоны данными, относящимися к нашим продуктам.

Чтобы увидеть полный список доступных переменных шаблона, посетите Шпаргалку Марка Данкли по Shopify.


Жидкость: основы

Liquid здесь, чтобы облегчить нам жизнь как дизайнеров тем. Один из основных способов сделать это - использовать макеты. Макеты идеально подходят для включения общих элементов страницы, таких как верхний колонтитул, основная навигация, нижний колонтитул и т. Д.

В моей структуре папок выше вы заметите файл с именем theme.liquid в папке макетов. Вы можете думать о theme.liquid как о нашем главном шаблоне. Все остальные наши шаблоны, такие как product.liquid, отображаются внутри этого главного шаблона. При желании у вас может быть несколько макетов, но по умолчанию всегда следует называть theme.liquid.

Я не видел файла theme.liquid от United Pixelworkers, но вы можете представить, что он содержит разметку для областей, выделенных ниже красным.

Вот как может выглядеть базовый макет theme.liquid:

  1. ! DOCTYPE html>
  2. html>
  3. голова>
  4. {{content_for_header}}
  5. title> Заголовок страницы здесь / title>
  6. / голова>
  7. тело>
  8. {{content_for_layout}}
  9. / body>
  10. / html>

Вы заметите две фразы, заключенные в двойные фигурные скобки: {{content_for_header}} а также {{content_for_layout}}. Это наши первые примеры использования Liquid.

Shopify часто использует {{content_for_header}} для добавления определенных файлов в раздел head> документа: например, для добавления кода отслеживания. {{content_for_layout}} - это место, где будет отображаться содержание нашего шаблона с отображением URL. Например, если мы просматриваем страницу продукта, наш файл product.liquid заменит {{content_for_layout}} в нашем файле макета.

Понимание product.liquid

Теперь, когда мы познакомились с основами макетов, пришло время взглянуть на шаблон.Магазины - это товары, поэтому давайте посмотрим product.liquid.

Вот очень простой, но функциональный пример шаблона product.liquid.

  1. h2> {{product.title}} / h2>
  2. {{ описание продукта }}
  3. {% if product.available%}
  4. form action = "/ cart / add" method = "post">
  5. выберите id = "product-select" name = ’id’>
  6. {% для варианта в product.variants%}
  7. option value = "{{variant.id}}"> {{variant.title}} - {variant.price} / option>
  8. {% endfor%}
  9. / выбрать>
  10. input type = "submit" name = "add" value = "Добавить в корзину" id = "покупка" />
  11. / форма>
  12. {% еще %}
  13. p> Этот продукт недоступен / p>
  14. {% endif%}

Здесь работает ряд ключевых концепций Liquid. Давайте рассмотрим их по порядку.

Выход

Первая строка кода содержит фразу {{product.title}}. При рендеринге будет выведено название продукта, которое, как вы теперь знаете, определяется URL-адресом. В приведенном ниже примере United Pixelworkers название продукта просто "Индианаполис".

Liquid использует формат точечного синтаксиса. В этом случае {{product.title}} соответствует переменной шаблона продукта и ее атрибуту title. Мы можем вывести описание продукта таким же образом, используя {{ описание продукта }}.

В терминах Liquid это известно как выход. Весь вывод обозначен двойными фигурными скобками, как показано ниже: {{your_output}}.

Логика

В следующей строке кода вы заметите выражение в фигурной скобке, за которым следует%: в этом случае {% if product.available%}. Это еще одна важная концепция в Liquid, известная как логика. Ниже вы увидите {% else%} и, наконец, {% endif%}.

Этот если заявление позволяет нам определять, что будет отображать наш шаблон, на основе одного или нескольких условий: в данном случае, доступен ли наш продукт. Фактически это означает: «Если наш продукт доступен, покажите относящуюся к нему информацию; в противном случае покажите сообщение, сообщающее пользователю, что его нет в наличии ».

Во всех логических операторах в Liquid используется процентное обозначение фигурных скобок, то есть {% if…%}. Просто не забудьте закрыть свои утверждения соответствующим образом, иначе у вас возникнут проблемы. Например:

  1. {% if product.available%}
  2. Показать кнопку "Добавить в корзину" здесь
  3. {% еще %}
  4. Отображение сообщения о том, когда продукт будет в следующий раз доступен
  5. {% endif%}

Фильтры

Liquid позволяет нам управлять нашим выводом несколькими способами. Один из них - использовать фильтры. Контент, который попадает в фильтр, выйдет на другой конец измененным определенным образом.

Взглянув на приведенный выше пример product.liquid, вы заметите { Деньги }. Вариант - это термин, используемый для описания разновидности продукта: например, разных цветов и размеров. Интересно то, что мы используем фильтр для изменения выходных цен - в данном случае с помощью денежного фильтра. В результате перед ценой будет добавлен символ валюты магазина.

Другие фильтры включают strip_html, который удалит любые HTML-теги из данного фрагмента текста и ucase, который преобразует его в верхний регистр.

Вы также можете объединить фильтры. Например:


  1. {article.content}

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

Фильтры также позволяют нам быстро создавать элементы сценария и изображения в шаблонах. Вот очень быстрый способ использования фильтра для вывода изображения со связанным тегом alt:

  1. {asset_url}

Использование этого в нашей теме Shopify приведет к отображению следующего элемента img в нашем шаблоне:

  1. img src = "/ files /shops / your_shop_number / assets / logo.png" alt = "Логотип сайта" />

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


Что дальше?

Надеюсь, эти несколько примеров показали вам, что Liquid не так уж и сложна. Конечно, вы можете сделать с этим гораздо больше, но, освоив вывод, логику и фильтры, вы хорошо на пути к пониманию большей части того, что вам понадобится для создания темы Shopify.

Дополнительные ресурсы и вдохновение

  • Полезные руководства по Shopify для начинающих
  • Шпаргалка Марка Данкли по Shopify
  • Blankify: стартовая тема Shopify
  • Учебное пособие: создание темы с нуля
  • Партнерская программа Shopify
  • 40 вдохновляющих магазинов Shopify
Интересное на сегодня
Картина на холсте для начинающих: лучшие советы
Далее

Картина на холсте для начинающих: лучшие советы

Добро пожаловать в руководство Creative Bloq по рисованию на холсте для начинающих. Если вы до сих пор в основном работали в своем альбоме для рисования или на бумаге, переход на холст может оказаться...
Должны ли британские дизайнеры работать за границей после Brexit?
Далее

Должны ли британские дизайнеры работать за границей после Brexit?

Миллениалам вроде меня невероятно повезло. Взаимосвязанный мир, в котором мы живем, предоставляет ощутимые глобальные возможности, в отличие от всего, что когда-либо испытывало какое-либо поколение.Я ...
iPad Pro против MacBook Air: что покупать?
Далее

iPad Pro против MacBook Air: что покупать?

iPad Pro против MacBook Air может показаться легким выбором. Если вы ищете ноутбук Apple стоимостью 1000 фунтов стерлингов / 1000 долларов США, MacBook Air выглядит как единственный вариант… но разве ...