Skip to content

Known Issues & Gotchas

Traps found while documenting the theme. These are verified against the code, not guesses. If you’re doing production work, skim this first — most of these look like something you did wrong when they aren’t.

Comparison Table — cells bind to columns by position

Section titled “Comparison Table — cells bind to columns by position”

Cells map to columns by order alone. Add a column later and every existing row silently renders one cell short — no warning, no error.

  • Build all your columns first, then fill rows.
  • highlight_column is a plain number that does not follow a column you drag. Reorder columns and the highlight stays on the old position.
  • Set it higher than the column count and the whole table renders dimmed with no highlight band.
  • The header row, footer row and stats containers always appear in the block list but render nothing until filled — that’s expected, not a broken block.
Section titled “Featured Collections — the carousel looks like it does nothing”

“Use carousel layout” is torn down at 992px and up and reverts to a grid. On a desktop browser it appears to do nothing. Check it below 992px.

A Collection Card with no collection picked renders a grey placeholder on the live site, not just in the editor.

Section titled “Featured Banner — the last block is pinned to the bottom”

The final block in the list is anchored to the bottom of the content card. Drag anything below Buttons and the CTA placement breaks.

  • Aspect ratio only appears when “Show content blocks” is off, and the height settings still act as a minimum against it.
  • With no media and content blocks off, the section renders nothing at all.

Product Row — settings appear and disappear by mode

Section titled “Product Row — settings appear and disappear by mode”

Button label, Show price, Price prefix/suffix and Products to show exist only in Collection mode. In Selected products mode the equivalents live per-card on each block instead.

If Source is Collection but no collection is picked, it silently falls back to rendering the blocks.

Health Library — search and tag filters can’t both be on

Section titled “Health Library — search and tag filters can’t both be on”

They’re mutually exclusive because of a Shopify routing constraint, not a setting you’ve got wrong.

Tag names become filter button labels verbatim, so internal tags (draft, 2024) leak to the storefront, and Migraine / Migraines show up as two separate buttons. Tidy the tags, not the section.

This section also has no tablet padding pair, unlike every other section. The Blog picker is ignored on blog templates and only matters if the section is reused on a page template.

The nav columns are pinned to a fixed 12-column grid (2 tracks each, starting at track 4). A fifth column wraps rather than fitting. Only footer-nav-column is repeatable; the other five block areas are static.

The footer has zero section settings and isn’t reachable from a template — it’s edited via the Footer group in the customizer, which also carries the quiz modal.

Video Showcase — empty URL renders nothing

Section titled “Video Showcase — empty URL renders nothing”

A YouTube block with no URL renders no placeholder and no warning. It just silently isn’t there.

An uploaded Video beats a Video URL with no warning, and the two paths use different poster settings:

If you use The poster comes from
Video (uploaded) Video poster
Video URL (YouTube) Video thumbnail

Fill in the wrong one of that pair and you get no poster image. With neither video field set, the block renders nothing at all.

Needs both the Klaviyo form ID on the block and the onsite script in Theme settings. There is no Shopify fallback. The warning only shows in the editor — the live page gives no signal when it’s misconfigured. Verify a real submission.

Section titled “Related Products — empty on non-product pages”

There’s no recommendations endpoint outside a product page. An empty Product list there means an empty section.

Collection Grid — blank fields are intentional

Section titled “Collection Grid — blank fields are intentional”

Title and Description are deliberately empty and fall back to the collection’s own fields. Pagination style is a theme-wide setting, not this section’s. Clearing “Secondary link label” is the only way to hide that link.

“Which one is right for me?” goes nowhere

Section titled ““Which one is right for me?” goes nowhere”

The swatch layout renders that link as <a href="#">. It looks clickable and does nothing. It needs a real destination before any swatch product ships.

The swatch layout is gated to option.position == 1. Set it on option 2 or 3 and it silently falls back to pills. (There’s also a dead code branch comparing the metafield key rather than its value — it can never run.)

Product Stock Message isn’t in the block picker

Section titled “Product Stock Message isn’t in the block picker”

It’s rendered from inside Product Form Submit as a static block, not added to Product Main. If you’re hunting for it in the add-block list, that’s why it isn’t there.

Ratings may come from two different systems

Section titled “Ratings may come from two different systems”

The theme-side reviews overview reads Stamped metafields, while the live template also renders Okendo app blocks. The same rating can appear twice near the top of the PDP — and if the store moved to Okendo without backfilling Stamped, the theme stars read zero while the app widget shows the real score. Worth verifying before trusting either number.

The bundle metaobject’s price / compare_price fields are printed as plain text, bypassing money formatting entirely — so typed values ignore currency and market pricing. Leaving them empty is the safe default.

blocks/text.liquid hardcodes white text with no override, so it’s invisible on light backgrounds. It’s legacy — use Rich text instead.

The Ellipse background picker is never read; the circle is hardcoded to a colour (bg-cream-500) that isn’t defined in the theme palette at all, so it renders with no background.

Video and Icon aren’t referenced by any section schema or static block call, so neither is reachable in the customizer today.

FAQs and Marquee have no padding controls at all — spacing is hardcoded. Don’t go looking for the standard six padding settings; they aren’t there.

Features’ “Columns (Desktop)” only takes effect at 1280px and up. Between 768px and 1280px the grid is always two columns. Its schema also has an orphaned “Color Scheme” header with no setting under it, which shows as a bare label.

Type // in a Title or Rich Text heading and it becomes a line break. It’s the only way to control heading wrapping, and it isn’t discoverable from the field.

Not merchant-facing, but worth a ticket:

  • marquee-image — remove the three dead settings, or wire them up.
  • customer-ratings — change the star_color default to a brand token.
  • footer-legal — the only block in the footer set with hardcoded English labels ("Legal", "Legal Menu", "Copyright Text") instead of t:blocks.* keys. No footer-legal entry exists in locales/en.default.schema.json.
  • footer-social-icon — orphaned show_title translation with no matching schema setting.
  • snippets/reviews-preview.liquid — an empty stub wired to a live theme setting. Either implement the reviews provider or remove show_reviews_preview so it can’t be switched on.
  • sections/style-guide.liquid — marked “delete before launch”.
  • sections/timeline.liquid — preset still has placeholder copy ("Celebrating XXX,XXX customers").
  • blocks/callout-bar.liquid — logic contradiction makes the quiz button unreachable; two unused colour settings.
  • blocks/accordion-item.liquidcontent setting is never rendered; the markup also reads a block.settings.open that isn’t in the schema.
  • blocks/icon.liquidbg-cream-500 is not a defined theme colour, and ellipse_background is never read.
  • blocks/text.liquid — hardcoded text-white with no override.
  • sections/announcement-bar.liquid — six unused settings.
  • sections/main-product.liquidshipping_message / use_shipping_message unused.
  • blocks/product-card.liquid — orphaned block; title / subtitle unused.
  • blocks/product-variant-options.liquid — placeholder href="#", and a dead branch comparing the metafield key instead of its value.
  • sections/marquee.liquidaria-hidden on the whole section with no prefers-reduced-motion guard or pause control (WCAG 2.2 AA gap); speed is raw text, so a value without an s unit stops the animation.