Book Image

Shopify Theme Customization with Liquid

By : Ivan Djordjevic
Book Image

Shopify Theme Customization with Liquid

By: Ivan Djordjevic

Overview of this book

Shopify is one of the fastest-growing eCommerce platforms, which means developers familiar with the Liquid concept are needed now more than ever. This book will help you to build a solid foundation by enabling you to develop your skills from the ground up by gaining essential theoretical knowledge of Liquid and putting that knowledge to use through hands-on projects. Shopify Theme Customization with Liquid begins by helping you get to grips with basic Shopify information, its interface and theme structure, setting up your Partner account, and creating a child theme, which is essential when preparing for any future work on Shopify. You'll then explore Liquid core features that will provide you with a basic understanding of the Liquid programming logic needed to develop any feature. As you advance to the latest and advanced features, you'll learn about JSON settings, allowing you to create any type of static or dynamic section - a must-have for becoming a competent Shopify developer. Finally, the book takes you through the Shopify Ajax API to gain the necessary skills needed to create a variety of dynamic features and content. By the end of this Shopify book, you'll be able to take on challenging projects to showcase your theme customization expertise to your future employer.
Table of Contents (15 chapters)
1
Section 1: Shopify Explained
4
Section 2: Exploring Liquid Core
8
Section 3: Behind the Scenes
Appendix: Frequently Asked Questions

Chapter 5, Diving into Liquid Core with Filters

Question 1

Suppose that we have an array named product_handles with handles of 30 products. What issue in the following code would prevent us from outputting the images of all 30 products successfully?

{% for handle in product_handles %}
  {% assign product_object = all_products[handle] %}
  {% for image_item in product_object.images %}
    <img src="{{ image_item | img_url }}"/>
  {% endfor %}
{% endfor %}

Answer

Since we are looking to output more than 20 products, in this case, 30 products, we cannot use the all_products object, as the all_products object has a limitation that we can only call it 20 times on a single page. If we are looking to recover data from more than 20 products, we need to assign them to a collection and then perform a loop over those products. We can remind ourselves of the all_products object by visiting the Working with HTML and URL...