Product Grid
Convert product grid HTML to Liquid
Turn static product card grids into Shopify sections wired to collection objects—with schema for collection picker, product limits, and card layout options.
Component overview
Product grids that pull live Shopify data
Product grid HTML
Static HTML product cards cannot stay static—either bind to collection.products loop on collection templates or use section settings with collection picker for featured grids on homepage. Converter output is the card markup; you wire the data source in Liquid.
Liquid strategy
Section setting: collection picker. Loop: {% for product in collections[section.settings.collection].products limit: section.settings.products_to_show %}. Render card snippet inside loop. Paginate on collection templates, limit on homepage rows.
Schema for product grids
collection type setting, range for products_to_show, checkbox for show_vendor/show_secondary_image. Card HTML from converter becomes snippet or inline loop body. image_url widths sized for grid density.
Performance
limit: cap on homepage (4–8 typical). Lazy load card images below fold. Avoid nested product loops inside block loops. Do not load quick-buy JS on every page unless section setting enables it.
Common grid mistakes
Hardcoded product titles in HTML left unconverted. No collection picker—merchants cannot change featured row. img_url filter still in output. 50-product loop without paginate on collection page.
Grid QA checklist
Collection picker change updates products. Sold-out styling works. Card links to correct PDP. Mobile column count matches design. Empty collection handled gracefully.
Examples
Product grid HTML to Liquid conversion example
How static product cards become a collection-driven Shopify section.
HTML structure
<div class="product-grid">
<div class="product-card">
<img src="product.jpg" alt="">
<h3>Product name</h3>
<span>$49.00</span>
</div>
</div>Static cards signal the layout pattern—the converter replaces inner content with a product loop.
Liquid output
{% assign collection = collections[section.settings.collection] %}
{% for product in collection.products limit: section.settings.limit %}
<div class="product-card">
{{ product.featured_image | image_url: width: 600 | image_tag }}
<h3>{{ product.title }}</h3>
<span>{{ product.price | money }}</span>
</div>
{% endfor %}Live product data replaces hardcoded values—prices and images stay current automatically.
Schema settings
"settings": [
{ "type": "collection", "id": "collection", "label": "Collection" },
{ "type": "range", "id": "limit", "min": 2, "max": 12, "label": "Products" },
{ "type": "text", "id": "heading", "label": "Heading" }
]Collection picker and range settings give merchants merchandising control in the editor.
Compare-at badge
{% if product.compare_at_price > product.price %}
<span class="badge">Sale</span>
{% endif %}Conditional Liquid renders sale badges when compare-at pricing is set on the product.
Use cases
Shopify product grid use cases
Merchandising layouts converted from HTML to Liquid.
Featured collection rows
Homepage grids pulling from a curated collection with heading and view-all CTA settings.
Custom product card layouts
Bespoke card designs with badge overlays, vendor lines, and secondary image hover effects.
Category merchandising grids
Collection landing slices with configurable product limits and column density per template.
Workflow
How product grid conversion works
Paste product card HTML and export collection-aware Liquid with schema, scoped CSS, and validation.
- 01
Paste HTML
Import product grid markup with card structure.
- 02
Analyze structure
Identify card layout and map to collection loop.
- 03
Generate Liquid
Wire product.title, price, and image filters.
- 04
Generate schema
Add collection picker, limit, and heading settings.
- 05
Export section
Drop the grid section into homepage or collection templates.
Related
Related tools and component guides
Guide
HTML to Liquid Converter
Free guide — paste component HTML and export a complete Shopify section file.
Open guide →Tool
Open converter workspace
Paste component HTML and export a complete Shopify section file.
Open guide →Generator
Shopify Section Generator
Generate OS 2.0 sections with schema, blocks, and presets.
Open guide →Schema
Liquid Schema Generator
Design schema JSON that pairs with converted component Liquid.
Open guide →Tool
Shopify Liquid Converter
Convert HTML markup into clean Shopify Liquid templates.
Open guide →Blog
Component conversion guides
Read tutorials on sections, schema, and block patterns.
Open guide →Theme
HTML to Dawn Theme
Ship FAQ and content sections on Shopify's reference theme.
Open guide →Theme
HTML to Prestige Theme
Adapt component sections for Prestige editorial storefronts.
Open guide →Theme
HTML to Broadcast Theme
Deploy story-driven component sections on Broadcast.
Open guide →Theme
HTML to Impulse Theme
Use conversion-focused component sections on Impulse.
Open guide →Component
Convert FAQ HTML to Liquid
Turn accordion FAQs into block-based Shopify sections.
Open guide →Component
Convert slider HTML to Liquid
Map carousels to reorderable slide blocks.
Open guide →Component
Convert banner HTML to Liquid
Export promo and announcement banners with schema settings.
Open guide →Component
Convert hero section HTML to Liquid
Build campaign heroes with editable headings and CTAs.
Open guide →Component
Convert tabs HTML to Liquid
Convert tabbed panels into merchant-editable sections.
Open guide →Component
Convert accordion HTML to Liquid
Export collapsible panels as repeatable Shopify blocks.
Open guide →Convert HTML to Shopify Liquid
Paste HTML & generate Liquid with schema, blocks, and scoped CSS. No signup required.