Tinker theme 'from pricing' collection page

Topic summary

Issue Identified:
The Tinker theme (from Horizon Themes) doesn’t display “from” pricing on collection pages when products have variants with different prices—it only shows the first variant’s price, which can be misleading.

Solution 1 - Code Edit:

  • Navigate to: Online Store → Themes → Edit code
  • Locate card-product.liquid or main-collection-product-grid.liquid
  • Replace {{ product.price | money }} with conditional logic:
    • If product.price_varies, display “From [minimum price]”
    • Otherwise, show standard price
  • Optional CSS styling can make the “From” text smaller/lighter

Solution 2 - No-Code Approach:

  • Hide the default “Price” block in theme customizer
  • Add a “Custom liquid” block with code that checks product.price_varies
  • Uses {{ 'content.price_from' | t }} for proper translation support
  • Screenshot provided showing block placement

Status: Multiple working solutions offered; awaiting user’s store details for implementation assistance.

Summarized with AI on October 24. AI used: claude-sonnet-4-5-20250929.

Hi, I’m looking at the tinker theme from the new horizon themes. I noticed it does not show the ‘from’ price on items on the collection page when theres varying prices of varients. Is there a way of correcting this without using an app? or is there any other horizon themes that do show the ‘from’ price on the collection page

1 Like

Hello @BandO

Yeah, that’s a common thing with the Tinker theme. By default, it doesn’t show the “From” price on the collection page when products have variant prices. You can actually fix it pretty easily without using any app.

Here’s what to do:

1. Go to Online Store → Themes → Edit code

2. Open card-product.liquid (or sometimes main-collection-product-grid.liquid)

3. Look for where the product price is displayed — it should look like this:{{ product.price | money }}

4. Replace that part with this:{% if product.price_varies %}

From {{ product.price_min | money }}

{% else %}

{{ product.price | money }}

{% endif %}

That’ll make it show “From $X” whenever your product has variants with different prices.

If you want the “From” text to look a bit lighter or smaller, you can add a small CSS tweak like this:

.price–from {font-size: 0.9em;color: #777;}

It’s a simple fix and works fine for most of the Horizon themes too.

Hope that helps! :blush:

Hi @BandO

Ok dear, please share your store URL and collaborator code with me so I can check and provide you with the proper solution.

Yes, Horizon family of themes show the price of the first variant on collection page, which is misleading.

You can, however, fix it without editing theme code, which is a huge beenfit.
You need to hide the “Price” block and add a “Custom liquid” block right next:

Put this code into “Custom block”:

<div ref="priceContainer">
  <span class="price">
    {% assign price = closest.product.price | money_with_currency %}

    {% if closest.product.price_varies %}
      {{ 'content.price_from' | t: price: price }}
    {% else %}
      {{ price  }}
    {% endif %}
  </span>
</div>