Help with Shopify product page — size options not crossing out when out of stock + pre-order button logic

Hey Guys,

I’m working on customizing a Shopify product page and hit a roadblock with variant handling.

What I want to achieve:

  • Product has multiple sizes (A1, A1L, A2, A2L, A3, A3L, A4, etc.).
  • When a size is out of stock, it should appear crossed out and grayed out in the size selector.
  • If the customer clicks that out-of-stock size, the “Add to Cart / Buy Now” button should change to a Pre-order button instead.

The problem:
When I enable Shopify’s “Continue selling when out of stock”, the variants don’t get crossed out. They stay selectable as if in stock, and the page keeps showing “Add to Cart / Buy Now” instead of a pre-order option.

Extra context:

  • The block of code I’m working with isn’t a generic theme snippet — it’s part of a custom section.
  • So far, I’ve tried handling this with variant availability checks in Liquid, but it doesn’t play nicely with the “continue selling” setting.
  • My thought is maybe I need a custom JS + Liquid combo to check inventory and dynamically switch the button/variant states.

Main question:

  • Is it better to custom-code this logic (Liquid + JS for inventory checks and button states)?
  • Or is it more reliable in the long run to just use an app like WOD – Pre-Order to handle pre-purchases?

Has anyone here implemented something similar (crossed-out variants + conditional pre-order button)? Would love some pointers or even a snippet direction to go in.

Thanks in advance 🙏

Posted Sep 28, 2025, 1:33 PM UTC

34
Loading comments…