Starting with Horizon from ZERO - significant Issues with variant - price logic

I have started configuring a new front of my shop with Horizon, in order to keep my shop light and up to date without any bloated 3-rd party themes where any update depends on the mood (and time) of the developer. Compared with previous “free” themes released by Shopify, I can definitely say that this is something that I can work with… up to some point.

However, while the AI feature helps a lot (I’m NOT a technical person and I can not code) and I have achieved many improvements without touching the code (and while keeping the theme updatable), there are still “old” issues that Shopify never fixed (like really never, in none of the themes). Here they are:

  1. Variant and price logic are completely messed up:

- in the collection page, the theme is showing as a default the price of the first variant, regardless of the fact that is in or out of stock - no option to show a price range, show the lowest price, show a “from xxx” price.. or at least show the price of a variant that is actually in stock. Result: this is extremely misleading for a customer

  • on the product page, the customer will end up on the first variant available - even if it is out of stock - with a greyed out add to cart button. Result: some non technical customers will just quit.

  • on the product page, “variant ID” is automatically placed in the product link, even if the product does not have any variants. Result: Goodbye clean urls that can be shared without effort. Goodbye making another beter function with Shopify magic

What I did for variant and price logic:

Price logic was fairly simple - I have used Shopify Magic and improved with ChatGPT to correct the function (and add proper markings for discounted prices!).

Variant logic was (and still is) very challenging - after about 30 versions I managed to have what seemed to be a working version (with Shopify magic and Grok). With this version I was able to completely eliminate the option ID from the product link, autoselect the first option with stock on the product page (automatic redirect), hide the out of stock options and add appropriate styling settings for the options.

However, 2 days ago I discovered that this is not effective for the “Quick add” function and this kind of ruined everything - the “Quick add” function will always select the first variant of the product even if it is a variant without stock.

  1. No “New product” badge - unbelievingly , the theme is completely missing this function and there is also no way to add a custom badge. I have tried to make this with Shopify magic, but no luck. I also haven’t yet found a way to replicate the function from another 3rd party paid theme (yet).

  2. Back-in-stock alert - the Horizon theme promises a native Back-in-stock alert - up to to this moment, I haven’t been able to find this function or at least something related to it in the themes files. A built-in Back in stock alert would be a great addition to the theme.

  3. Wishlist - a built-in native wishlist would also be an amazing feature and a great addition to the theme.

PS: If there is any other place where I can report these issues, please let me know.

I appreciate any advice on how to make the variant - price logic work well. This is the main issue keeping me from launching the new version of my shop.

Hi,

You’re right — Horizon (like many Shopify themes) has classic limitations with variants and pricing. Quick tips:

  • Variant & Price Logic: Use Liquid + JS to auto-select the first in-stock variant and update prices dynamically. For Quick Add, the same logic must run on that button. Apps like Bold Product Options or Variant Options Swatch King can help.

  • New Product Badge: Can be done via Liquid by checking created_at.

  • Back-in-stock Alerts & Wishlist: Use apps like Back in Stock or Growave.

For launching, focus on fixing variant & price logic first; other features can be added gradually.

Hi @RCosmin ,

I completely understand your frustration with the variant and price logic issues. It’s great that you’ve already taken some steps to improve it using Shopify Magic and ChatGPT!

For the Quick Add issue, unfortunately, this function often defaults to the first variant, even if it’s out of stock. It might require deeper customization or an app to handle this better.

Regarding the New Product badge and Back-in-Stock alert, you’re right – Horizon doesn’t natively support them, and there’s no easy way to add these features without custom code or third-party apps. For Wishlist, apps like Wishlist Plus could be an easy solution while you wait for potential theme updates.

If you want to make the variant-price logic more efficient, you could explore apps or custom scripts that manage stock visibility better and show correct pricing on the collection page. This might involve working with Shopify’s API or custom Liquid code to fix the pricing display and stock visibility more effectively.

As for reporting these issues, it’s best to send them directly to Shopify support, but you can also check the Shopify community forums for any related threads.

Hope this helps, and good luck with your store launch! Let me know if you need more assistance.

Best,

Felix

Hi @rezwan_cs

Thank you for sharing such a detailed overview of your experience with the Horizon theme. It’s clear you’ve put a lot of effort into improving your shop’s functionality, especially given the challenges with variant and price logic.

Regarding the points you mentioned:

  1. Variant & Price Logic

    • You’re right—Shopify’s default handling of variants and prices can be limiting, particularly for collection pages and quick add functions. What you’ve implemented with Shopify Magic and Grok to select in-stock variants and hide out-of-stock options is a smart approach.

    • For the Quick Add function, this behavior is a known limitation in many themes. One possible solution is to customize the Quick Add script separately to replicate the same variant-selection logic as on the product page. This would ensure the first available variant is always selected.

  2. “New Product” Badge

    • Most free or lightweight themes don’t have this built-in. One approach is to use a tag-based system (e.g., tag products as “New”) and then use a small Liquid snippet to display a badge for those products. This keeps it theme-updatable without touching the core files.
  3. Back-in-Stock Alerts & Wishlist

    • Horizon seems to lack native implementations for these. You might want to consider using trusted apps that integrate cleanly with your theme for both features. Many apps can display alerts or wishlists without breaking theme updates.
  4. Reporting Issues & Feedback

    • You can report these issues directly to the Horizon theme developers—most premium/free Shopify themes have a support or feedback channel. Shopify also accepts feature requests through their community forums, especially for Plus-compatible themes.

Thanks

Thank you all for the reply and suggestions. While the rest of the issues are small and fixable, I’m still not able to fix the “Quick add” function. This one is broken from the start due to poor logic (the theme chooses first option - NOT first option with stock), but now even more due to the fact that I have replaced the original “Variant selector” with a custom one.

Any suggestions would be much appreciated. Maybe a work around?

quick add with the default variant selector.

quick add with the custom variant selector.