Product stage

The buying-first product layout: gallery on one side, buying column on the other, both pinned as the page scrolls. Twenty-four block types build the buying column, including app blocks.

Merchant-addable
Yes
Settings
100
Block types
24
Max blocks
50
File
sections/product-stage.liquid

Used by default on: Product (set)

When to use it

Products the customer already understands. Refills, repeat purchases, simple SKUs — anywhere the decision is "yes" rather than "what is this".

Setting it up

  1. This section drives the product.stage template. Assign it to a product under Products → your product → Online store → Theme template.
  2. Configure the gallery under Media, and the two-column behavior under Layout.
  3. Build the buying column by adding and reordering blocks. A sensible order: Product identity, Title, Price, Product rating, Variant picker, Quantity selector, Purchase options, Buy buttons, then reassurance and disclosures below.
  4. Add Complementary products and Collapsible information blocks toward the bottom, not above the buy button.
  5. Set color schemes under Colors.
  6. Set Value source on each Product highlight block so highlights vary per product, with the typed label as the fallback. See Per-product content.

Where the content comes from

Shopify product data owns title, price, compare-at, variants, availability, media, and selling plans. Blocks own supporting editorial — reassurance items, formula notes, and popups.

Notes and cautions

  • Accelerated checkout buttons are rendered by Shopify with Shopify's own styling. Their appearance is not customizable — that is a platform rule, not a theme limit.
  • Blocks can be reordered by dragging. Anything below the buy button is read by far fewer people, so order deliberately.
  • Product highlight blocks placed next to each other share one row, and Formula note blocks placed next to each other share one strip. Drag one away from its neighbors to show it on its own at that spot.
  • Show desktop navigation hint controls the navigation pill on desktop only. On phones, a slim pill with previous and next arrows, a progress track, and the image count always shows over the image, alongside swipe, so every image can be reached with a tap.

Product Stage setup

Stage cover image

Under Media → Stage cover image, select an optional wide image. It becomes the first slide, followed by all of the product’s existing gallery media in their original order. Use a 2400 x 1350px .jpg with the set clearly composed in the frame. Add meaningful alt text to the uploaded image.

A manually selected image is shared by products using the same template. For a different cover on each product, create a product image metafield (File with images accepted), fill it on each product, and connect that metafield to Stage cover image using the dynamic-source button. A product with no connected image uses its normal gallery without an extra slide.

Keep the product’s featured image composed for portrait cards in collections, search, and recommendations. The Stage cover is separate and does not replace that featured image.

Cover image fit controls only the custom opening slide and appears when a cover image is selected. It defaults to Fill the stage. Product gallery fit controls the following product images and other gallery media independently. Existing gallery fit selections are preserved. For either control, Fill the stage crops to fill the frame; Fit within the stage preserves the full image with a compact 12px clearance below the floating header. Fitted portrait and square photographs align to the top of that usable area. Landscape photographs center vertically within the space below the header, with balanced space above and below. All fitted photographs stay centered horizontally. This applies independently to the cover and gallery, including gallery video posters and players. Fill mode continues behind the floating header. Fitted cover and gallery photographs follow the global media corner radius, including sharp corners when the theme uses Sharp. The radius clips the photograph itself even when its aspect ratio leaves space in the stage. A useful combination is a cover that fills the stage followed by portrait product images that fit within it. Variant links still open the matching variant media when provided, and choosing a variant still navigates to its gallery image. Hotspot media positions continue to count only product gallery items, excluding the cover. The cover also works on its own when a product has no gallery media.

On desktop, fitted images use the space between the thumbnail rail and the Product information card, with a 16px gap beside each. The image stays fully visible for either card position. Hiding details expands the fitted media area; showing details restores the space reserved for the card. The information card keeps its standard readable width. The image moves and resizes smoothly using the global interface animation speed. No motion and reduced-motion preferences switch the layout immediately. Repeated clicks reverse the movement from its current position. The desktop arrows, progress bar, and image count share the fitted image’s horizontal center and move with it when details open or close. Mobile controls stay centered in their reserved row below the image. On phones, fitted images have at least 12px clearance before the controls, followed by a 12px gap before the information card, so the controls do not cover the photograph. Desktop positioning uses the displayed photograph’s bounds. When there is room below the photograph, the controls sit midway in that space; otherwise they sit near the bottom of the stage over the image. The stage reserves the header’s measured layout height. Sticky-header movement while scrolling does not resize fitted images or change the controls’ position relative to the image. Resizing the viewport still recalculates the layout. Filled media continues to span the stage behind the floating card.

Show cover image on mobile is enabled by default. Turn it off to start phones on the product gallery instead; the cover still appears on desktop. If the product has no gallery media, its cover remains visible so the stage does not become empty. Mobile cover image optionally replaces the cover on phones. Use a portrait image (1200 x 1600px .jpg recommended); when empty, phones use the Stage cover image. This image uses Cover image fit and can connect to a product image metafield.

Mobile gallery layout controls the phone frame independently from Cover image fit and Product gallery fit. Choose Portrait (2:3, the default) for individual products, Square (1:1) for mixed galleries, or Landscape (16:9) for wide set photography. The setting applies to both the cover and product gallery. Fit preserves each complete image inside that frame; Fill crops to fill it. A portrait photo in a landscape frame will therefore appear narrower when fitted. For mixed set galleries, Square with Fit is a balanced starting point.

On phones, the selected frame is capped at 65% of the viewport height for the photograph area. Fitted portraits can use nearly the full available width in Portrait layout, while landscape images stay centered. The header and navigation row have reserved space, so fitted media does not overlap either. The gallery height stays steady when swiping between image shapes, with the purchase card directly below it. While a fitted slide is active, the mobile header uses its selected color scheme with an opaque background. Switching to a filled cover or gallery slide restores the header’s configured overlay appearance. Desktop header styling is unchanged.

The Product Stage preset uses this order: Product identity, Title, Product rating, Short benefit statement, Price, Variant picker, Purchase options, Quantity selector, Buy buttons, Delivery estimate, Reassurance item, and Collapsible information.

Ratings link to Product reviews when available. Purchase options appear only for products with selling plans. The preset keeps accelerated checkout off and sticky add to cart enabled. Merchants can enable accelerated checkout in Buy buttons.

Select your own shipping and returns page in the final Collapsible information block. It starts closed and remains hidden from customers until content is assigned. Use factual reassurance copy and links for the store’s actual policies.

The set template retains optional description, metadata, inventory, extra reassurance, complementary products, share, and pickup blocks in a disabled state. Enable only the blocks needed for that store. The existing media, colors, and card position are preserved.

Set template

Product Stage buys the set product and its selected variant. Evidence cards below it shows the individual products included in that set. Product routine follows it and explains how to use those products by previewing the routine pages that include them. Set contents, usage, benefits, proof, reviews, dossier, comparison, and related products each have a separate role. Replace the Proof ledger’s starter records with set-specific evidence before publishing.

The set template has no Protocol timeline or Routine builder. The full routine lives on the routine page that Product routine links to, so purchasing the set remains the main action on the set page.

Custom product highlights

Use a custom product metafield when the standard category attributes do not cover a value you want to display.

  1. Create a product metafield definition in Shopify admin, with a supported plain-value type.
  2. Fill the field on every product that should display it.
  3. In this section, open a Highlight block and select Custom product metafield.
  4. Enter the definition’s full namespace and key, such as custom.product_highlight, in the newly shown metafield identifier field. Enter this as plain text, without a dynamic-source connection.
  5. Save and preview products with different values. Existing manual fallbacks remain available.

See Custom product metafield setup for field creation steps, supported types, this section’s exact fallback behavior, and troubleshooting. If you enter only the key without its namespace, the theme editor displays a message explaining the required format.

Complementary product titles have no default underline on mobile. Titles follow the global text-link hover setting.

Complementary product arrows slide the outgoing and incoming pages horizontally together. Page height adjusts smoothly when the pages differ in height. The global Interface animation speed controls timing; No motion and reduced motion switch pages immediately.

Sticky add to cart

In Buy buttons, Show sticky add to cart on mobile and Show sticky add to cart on desktop independently control the sticky purchase action. Both are enabled by default. Mobile shows a slim bottom bar below 750px. Desktop shows a compact floating card in the lower-right corner at 750px and wider. Its slim horizontal layout pairs the product’s featured-image thumbnail and title with the priced button. The thumbnail is omitted when the product has no featured image. Titles wrap without truncation, and the card follows the section color scheme and theme corner-radius controls. Most of the page remains clear for reading. Turn off either option to keep the bar only on the other screen size, or turn off both to remove it.

The bar appears after shoppers scroll past the main add to cart button and stays above the following page sections, including Benefits and suitability, Proof ledger, and the Product dossier. It hides when the main button returns to view. It also hides while the cart drawer, a header menu, search, localization panel, or a dialog is open. The bar shows the native Shopify product title and copies the main button’s current label, including its price when Show price on add to cart is enabled, availability, and loading state. It submits the existing product form with the selected variant, quantity, purchase option, and gift card recipient details. It does not require a metafield or separate product content.

Long product titles wrap, and the page reserves space for the bar so the last page content remains reachable. Appearance follows the section color scheme and global motion settings, including reduced motion. Without JavaScript, shoppers use the main product form.

Delivery estimate

The Delivery estimate block tells shoppers when the selected variant ships and when it arrives, for example “Arrives Tue, Oct 20 – Fri, Oct 23” with “Order within 3 hr 12 min to ship today” beneath it. A newly added Product stage section does not include it; add it to the buying column with Add block. The default product template places it below Pickup availability with the countdown off. Match the schedule settings to how you ship before you publish.

Shipping schedule

  • Daily order cutoff — the hour, on a 24-hour clock, after which orders count from the next working day. It uses your store’s time zone from Settings > General in Shopify admin.
  • Processing time — working days to prepare an order. Use 0 to ship orders placed before the cutoff on the same day.
  • Shortest delivery time and Longest delivery time — working days in transit after an order ships. When both match, shoppers see a single date. If the shortest is set longer than the longest, the block swaps them.
  • Working days — Monday to Friday, Monday to Saturday, or Every day. Applies to both processing and delivery time.
  • Closed dates — holidays when you do not ship, written as YYYY-MM-DD and separated by commas, such as 2026-12-25, 2027-01-01. Entries in any other format are ignored.

Display

  • Shipping method — names the service the estimate describes, Standard shipping by default. Leave it blank to hide it.
  • Style — Compact shows the arrival dates with the dispatch day beneath. Timeline shows three stops: Order, Ships, and Arrives. The stops stack vertically in narrow columns and on phones.
  • Show time left before cutoff — off by default. Counts down, to the minute, to your daily cutoff. Turn it on once the cutoff and processing time match how your team actually ships.

The countdown is the real time left before your cutoff. When it ends, the dates move on to the next working day; it never restarts. Set the cutoff to the time your team actually ships orders, because Theme Store rules do not allow false urgency.

Dates are calculated in the shopper’s browser on your store’s clock, so a shopper in another time zone works to the same cutoff as your warehouse. Without JavaScript the block shows business days instead, such as “Ships in 1 business day” and “Arrives in 3–6 business days”. The estimate comes from these settings, not from carrier rates, so keep it in line with your shipping policy.

The block hides for sold-out variants, variants selling on backorder, and variants that do not require shipping, including digital gift cards. In the theme editor, a note explains why it is hidden. The estimate updates when shoppers choose another variant.

Content ownership: Shopify product data supplies availability, inventory policy, and whether a variant requires shipping. The block owns the shipping schedule and display. It reads no metafields.

Purchase options without JavaScript

Both product templates enable accelerated checkout by default. Shopify determines eligible methods from variant, market, customer and gateway. Recipient validation uses Add to cart and can hide accelerated checkout on gift products.

Without JavaScript, a labeled native selector submits the chosen variant rather than the initial hidden ID. A sold-out deep link still lets shoppers choose another available variant. Shopify owns options, price, media and availability; blocks own presentation. Verify quantity rules and purchase plans at checkout.

Complementary product title links keep a minimum 24px target in both layouts, including short names. Product data supplies each title and destination.

Product stage design

100%

Use the zoom controls, then scroll to inspect the image. Press Escape to close.

Section settings

Every setting on the section itself, in the order it appears in the theme editor. Group headings match the editor's own grouping.

Media

Stage cover imageImage

Optional first slide before the product gallery. Upload a wide image or connect a product image metafield for a different cover on each product. Product-card images stay unchanged. 2400 x 1350px .jpg recommended.

ID
cover_image
Show cover image on mobileCheckbox
ID
show_cover_on_mobile
Default
On
Shown when
cover_image is set
Mobile cover imageImage

Optional portrait cover for phones. Uses the Stage cover image when empty. 1200 x 1600px .jpg recommended.

ID
mobile_cover_image
Shown when
cover_image is set and show_cover_on_mobile
Cover image fitDropdown
ID
cover_image_fit
Default
Fill the stage
Shown when
cover_image is set
  • Fill the stagecover
  • Fit within the stagecontain
Product gallery fitDropdown
ID
media_fit
Default
Fill the stage
  • Fill the stagecover
  • Fit within the stagecontain
Mobile gallery layoutDropdown

Sets a consistent frame for the cover and product gallery on phones. Fit preserves the whole image; Fill crops to the frame.

ID
mobile_gallery_layout
Default
Portrait
  • Portraitportrait
  • Squaresquare
  • Landscapelandscape
Enable video loopingCheckbox
ID
enable_video_looping
Default
Off
Show thumbnailsCheckbox
ID
show_thumbnails
Default
On
Show desktop navigation hintCheckbox

Shows the navigation pill on desktop when the product has more than one media item. On mobile, compact arrows and the image count always show alongside swipe.

ID
show_hint
Default
On

Formula notes

Strip labelText

Appears at the start of the strip when you add formula note blocks.

ID
notes_label
Default
Formula notes

Layout

Section heightDropdown
ID
stage_height
Default
Full screen
  • Full screenfull
  • Talltall
  • Standardstandard
Details card positionDropdown
ID
card_position
Default
Right
  • Rightright
  • Leftleft

Colors

Stage color schemeColor scheme

Controls the media-stage background and Product information card. It does not control the mobile background behind the card.

ID
color_scheme
Default
scheme-1
Mobile info background color schemeColor scheme

Applies only on mobile screens behind and below the Product information card. For a smooth transition, choose the same color scheme as the very next section below Product stage.

ID
mobile_info_background_color_scheme
Default
scheme-1

Blocks

Blocks are added, reordered, duplicated, and removed inside the section. Each type has its own settings.

Eyebrow eyebrow max 1

Text sourceDropdown

Product category uses the product's Shopify taxonomy category and falls back to product type when the category is not set.

ID
source
Default
Product category
  • Product categorycategory
  • Product typeproduct_type
  • Vendorvendor
  • First collectioncollection
  • Custom textcustom
Custom textText
ID
text
Default
Signature ritual
Shown when
source is 'custom'
Link to source pageCheckbox

Links the label to the matching product type, vendor, or collection page.

ID
link_to_source
Default
Off
Shown when
source is 'product_type' or source is 'vendor' or source is 'collection'

Title title max 1

This section has no settings of its own.

Product description description max 1

Uses the description from this product's Shopify admin. Presentation settings do not replace or edit that content.

Display styleDropdown
ID
display_style
Default
Full content
  • Full contentfull
  • Collapsiblecollapsible
  • Excerptexcerpt
Visible linesSlider

Longer descriptions end in a Read more button that expands the rest in place.

ID
excerpt_lines
Default
3
Range
2 to 6, in steps of 1
Shown when
display_style is 'excerpt'
HeadingText
ID
heading
Default
Product details
Shown when
display_style is 'collapsible'
Open by defaultCheckbox
ID
open_by_default
Default
Off
Shown when
display_style is 'collapsible'

Body text text

TextRich text
ID
text
Default
<p>Share a short supporting line about this product.</p>

Short benefit statement benefit_statement max 1

StatementRich text

Add one concise editorial reason to buy before the purchase controls. This content supplements rather than replaces the product description. Connect an optional product metafield when the statement varies by product.

ID
text
Default
<p>A focused step for your daily routine.</p>

Product rating rating max 1

Shows the average rating from the product reviews metafield added by review apps.

Show rating valueCheckbox
ID
show_rating_value
Default
On
Show review countCheckbox
ID
show_review_count
Default
On
Link the review count to the reviews sectionCheckbox

Scrolls to the Product reviews section. The count shows as plain text on pages where that section has no review content.

ID
link_to_reviews
Default
Off
Shown when
show_review_count

Price price max 1

Show sale badgeCheckbox
ID
show_sale_badge
Default
On
Show tax and shipping noteCheckbox
ID
show_tax_and_shipping_note
Default
On
Show currency codeCheckbox

Applies to the current and compare-at prices. Unit and installment prices stay compact.

ID
show_currency_code
Default
Off

Product highlight highlight max 4

Highlights placed next to each other display together as one row. Move a highlight away from the others to show it on its own. Each row adapts to one, two, three, or four highlights and the available product-info width.

IconDropdown
ID
icon
Default
Leaf
  • Leafleaf
  • Flaskflask
  • Dropletdroplet
  • Moleculemolecule
  • Layerslayers
  • Shieldshield
  • Sunsun
  • Sparklesparkle
  • Heartheart
  • Checkcheck
Value sourceDropdown

Reads this attribute from the product, so the highlight varies per product. The typed label appears when the product has no value for it.

ID
attribute
Default
Manual value (same on every product)
  • Custom product metafieldcustom_metafield
  • Manual value (same on every product)manual
  • Skin care featuresskin-care-features
  • Skin care effectskin-care-effect
  • Cosmetic functioncosmetic-function
  • Active ingredientsactive-ingredient
  • Constitutive ingredientsconstitutive-ingredients
  • Ingredient originingredient-origin
  • Product formproduct-form
  • Texturetexture
  • Skin typesuitable-for-skin-type
  • pH levelph-level
  • Fragrance levelfragrance-level
  • SPF levelspf-level
  • Certifications and standardsproduct-certifications-standards
Metafield namespace and keyText

Enter the full product metafield identifier as plain text, such as custom.when_to_use. Reads each relevant product, including cards with their own product. Supports text, numbers, true/false, and lists of text or numbers. Missing or unsupported values keep the existing manual fallback or empty state.

ID
custom_metafield
Shown when
attribute is 'custom_metafield'
Values shownSlider

A highlight stays readable beside its icon, so the attribute shows up to this many values.

ID
value_limit
Default
2
Range
1 to 3, in steps of 1
Shown when
attribute is not 'manual'
LabelText
ID
label
Default
Fragrance free

Variant picker variant_picker max 1

Configure variant presentation in Theme settings > Product variants.

Product metadata product_metadata max 1

Shows the SKU and barcode of the selected Shopify product variant. Each row appears only when the variant has a value for it.

Show SKUCheckbox
ID
show_sku
Default
On
Show barcodeCheckbox

Barcodes are often internal. Show this row only when customers need it, such as ISBN or GTIN lookups.

ID
show_barcode
Default
Off
Show labelsCheckbox

Hidden labels stay available to screen readers.

ID
show_labels
Default
On
Shown when
show_sku or show_barcode

Inventory status inventory max 1

Uses live inventory, availability, selling policy, and incoming inventory from the selected Shopify product variant.

Low inventory thresholdSlider

Variants at or below this quantity show a low inventory message. Set to 0 to disable low inventory messages.

ID
low_inventory_threshold
Default
5
Range
0 to 20, in steps of 1
Show exact inventory quantityCheckbox

Shows the selected tracked variant's real quantity. Low inventory uses the low inventory message.

ID
show_exact_quantity
Default
Off
Show incoming inventoryCheckbox

Appears only when Shopify reports incoming inventory for the selected variant.

ID
show_incoming_inventory
Default
On
Show next incoming dateCheckbox

Appears only when Shopify provides an arrival date. Otherwise the incoming inventory message has no date.

ID
show_next_incoming_date
Default
On
Shown when
show_incoming_inventory
Display styleDropdown
ID
display_style
Default
Chip
  • Chipchip
  • Subtle textsubtle

Quantity selector quantity max 1

Uses the selected Shopify variant's quantity rules, cart quantity, and catalog-specific volume prices. Rule details appear when catalog constraints apply.

Selector styleDropdown
ID
selector_style
Default
Framed
  • Framedbox
  • Pillpill
  • Softsoft
  • Split controlssplit
Button iconsDropdown
ID
selector_glyph
Default
Plus and minus
  • Plus and minussign
  • Up and down arrowschevron
Initial price rowsSlider

Sets the total number of volume-pricing rows shown before the Show more prices button, including the regular minimum-price row. Volume prices come from a Shopify catalog, so they appear in a theme preview and stay hidden in the theme editor. Open the theme in preview to check this setting.

ID
price_breaks_initial_rows
Default
3
Range
1 to 5, in steps of 1

Purchase options selling_plan max 1

Appears when the product offers subscriptions or other selling plans.

HeadingText
ID
heading
Default
Purchase options
Show price adjustmentCheckbox
ID
show_price_adjustment
Default
On
Show plan descriptionCheckbox

Shows description text supplied by the purchase-options app when available.

ID
show_plan_description
Default
On
Fallback descriptionMulti-line text

Appears once below the purchase options when the app supplies no descriptions. Leave blank to hide it.

ID
fallback_description
Shown when
show_plan_description
SizeDropdown
ID
size
Default
Small
  • Extra smallxs
  • Smalls
  • Mediumm
  • Largel

Buy buttons buy_buttons max 1

Show price on the add to cart buttonCheckbox
ID
show_price_on_add_to_cart
Default
On
Show accelerated checkoutCheckbox

Shopify shows this when the selection, customer, market, browser, and active payment methods are eligible. Unavailable selections and gift card recipient forms hide this button.

ID
show_dynamic_checkout
Default
On
Button layoutDropdown
ID
button_layout
Default
Stacked
Shown when
show_dynamic_checkout
  • Stackedstacked
  • Side by sideside_by_side
Show sticky add to cart on mobileCheckbox

Docks at the bottom after shoppers scroll past the add to cart button. Uses the same product form.

ID
show_sticky_add_to_cart
Default
On
Show sticky add to cart on desktopCheckbox

Shows a compact floating purchase card in the bottom corner after shoppers scroll past the add to cart button. Uses the same product form.

ID
show_sticky_add_to_cart_desktop
Default
On
Show recipient form for gift cardsCheckbox

Appears only on gift card products. Recipient validation supports Add to cart only, so the recipient form hides accelerated checkout.

ID
show_gift_card_recipient
Default
On

Reassurance item reassurance max 4

Uses instance-specific, merchant-provided facts. Adjacent reassurance items display as one group.

IconDropdown
ID
icon
Default
Shield
  • Checkcheck
  • Shieldshield
  • Deliverytruck
  • Returnsreturn
  • Leafleaf
  • Flaskflask
  • Heartheart
  • Sparklesparkle
TextText

Required for the item to appear. Enter a factual policy or product claim.

ID
text
Default
Secure checkout
LinkLink

Optional. Link to supporting policy or product information.

ID
link

Pickup availability pickup_availability max 1

Show location countCheckbox
ID
show_location_count
Default
On

Delivery estimate delivery_estimate max 1

Shows when the selected variant ships and arrives, counted in your store's time zone. Customers see dates once the page loads, and business days without JavaScript. Sold-out, backordered, and digital variants show no estimate.

Shipping schedule

Daily order cutoffSlider

Uses a 24-hour clock. Orders placed after this time ship from the next working day.

ID
cutoff_hour
Default
14
Range
0:00 to 23:00, in steps of 1:00
Processing timeSlider

Working days to prepare an order. Use 0 to ship orders on the day they arrive.

ID
processing_days
Default
1
Range
0d to 10d, in steps of 1d
Shortest delivery timeSlider
ID
transit_min_days
Default
2
Range
1d to 20d, in steps of 1d
Longest delivery timeSlider

Working days in transit after an order ships.

ID
transit_max_days
Default
5
Range
1d to 20d, in steps of 1d
Working daysDropdown

Counts processing and delivery time.

ID
working_days
Default
Monday to Friday
  • Monday to Fridaymon_fri
  • Monday to Saturdaymon_sat
  • Every dayevery_day
Closed datesText

Holidays when you do not ship, written as YYYY-MM-DD and separated by commas, such as 2026-12-25, 2027-01-01.

ID
closed_dates

Display

Shipping methodText

Names the service the estimate describes. Leave blank to hide it.

ID
method_label
Default
Standard shipping
StyleDropdown
ID
layout
Default
Compact
  • Compactcompact
  • Timelinetimeline
Show time left before cutoffCheckbox

Counts down to your daily order cutoff, then moves the dates on. Match it to your real fulfillment cutoff.

ID
show_countdown
Default
Off

Complementary products complementary_products max 1

Uses complementary recommendations configured for this product in Shopify Search and Discovery. The block stays hidden when no recommendations are available.

HeadingText
ID
heading
Default
Pairs well with
Maximum productsSlider
ID
maximum_products
Default
3
Range
1 to 10, in steps of 1
Products per pageSlider

Additional products appear on another page within the block.

ID
products_per_page
Default
2
Range
1 to 4, in steps of 1
Show as collapsible contentCheckbox
ID
collapsible
Default
Off
Image ratioDropdown
ID
image_ratio
Default
Square
  • Squaresquare
  • Portraitportrait
Show vendorCheckbox
ID
show_vendor
Default
Off
Show priceCheckbox
ID
show_price
Default
On
Show quick addCheckbox

Products with one purchasable variant go directly to the cart. Products with several variants open an option picker. Sold out products show no add control.

ID
enable_quick_add
Default
Off

Formula note note max 6

Formula notes placed next to each other display together as one strip. Move a note away from the others to start a separate strip.

IconDropdown
ID
icon
Default
Molecule
  • Leafleaf
  • Flaskflask
  • Dropletdroplet
  • Moleculemolecule
  • Layerslayers
  • Shieldshield
  • Sunsun
  • Sparklesparkle
  • Heartheart
  • Checkcheck
LabelText
ID
label
Default
Peptides

Information popup info_popup max 2

Use this block for a size guide, a measurement chart, or a short explainer such as ingredient terms or application steps. The content opens over the page so customers keep their place.

Link labelText
ID
label
Default
View size guide
Content sourceDropdown

Only the selected source renders. A page also gives the link a destination for customers without JavaScript.

ID
source
Default
Page
  • Pagepage
  • Rich textrichtext
PagePage

Pulls the content of an online store page, such as your size guide.

ID
page
ContentRich text
ID
content
Default
<p>Explain how to read the measurements, or define the terms used on this page.</p>
Shown when
source is 'richtext'
Popup headingText

Leave blank to use the page title, or the link label when the source is rich text.

ID
heading
IconDropdown
ID
icon
Default
Ruler
  • Nonenone
  • Rulerruler
  • Questionquestion
  • Documentdocument
  • Flaskflask
  • Dropletdroplet
  • Leafleaf
  • Layerslayers
  • Clockclock
  • Sparklesparkle
  • Shieldshield
  • Checkcheck

Collapsible information accordion

Use this block for shipping, returns, ingredients, care, usage, FAQ, or policy content. Add one block per topic.

HeadingText

Leave blank to use the page title when the content source is a page.

ID
heading
Default
Details
Content sourceDropdown

Only the selected source renders.

ID
source
Default
Rich text
  • Rich textrichtext
  • Pagepage
ContentRich text
ID
content
Shown when
source is 'richtext'
PagePage

Applies when the content source is Page. Pulls the content of an online store page, such as your shipping policy.

ID
page
IconDropdown
ID
icon
Default
None
  • Nonenone
  • Trucktruck
  • Returnreturn
  • Flaskflask
  • Leafleaf
  • Dropletdroplet
  • Clockclock
  • Sunsun
  • Sparklesparkle
  • Shieldshield
  • Checkcheck
  • Questionquestion
  • Documentdocument
Open by defaultCheckbox
ID
open_by_default
Default
Off

Custom Liquid custom_liquid max 2

Custom LiquidCustom Liquid

Add app snippets or other Liquid code to create advanced customizations.

ID
custom_liquid

Share share max 1

Shares the link to the variant the customer is viewing. Browsers that support the share sheet open it; every other browser shows a link customers can copy.

LabelText
ID
label
Default
Share
Show copy link buttonCheckbox

The link stays visible and selectable either way.

ID
show_copy_link
Default
On

Hotspot hotspot max 4

LabelText
ID
label
Default
View formula
Popover textRich text
ID
text
Default
<p>Introduce the hero ingredients behind this formula and the role each one plays.</p>
Appears on mediaNumber

Enter the media position from the product gallery. Values beyond the available media use the final item.

ID
media_index
Default
1
Label positionDropdown
ID
label_position
Default
Right
  • Rightright
  • Leftleft
  • Aboveup
  • Belowdown
Horizontal positionSlider
ID
pos_x
Default
50
Range
0% to 100%, in steps of 1%
Vertical positionSlider
ID
pos_y
Default
50
Range
0% to 100%, in steps of 1%

App blocks

This section accepts @app blocks, so apps you install can render inside it directly from the theme editor. Add the app's block the same way you add a theme block.