Hide price only for products priced at $0 (not just sold out).

Is there a way to hide the price on a product card when the price is set to $0? Across the entire site?

I found this question/answer to hide the price if the quantity is zero (sold out) and it worked:

https://community.shopify.com/c/shopify-design/dawn-theme-hide-price-of-out-of-stock-items/m-p/1845847

Is there a way to modify that code snip for the theme.liquid page to be “if product price is 0”, not “sold out”?

.price.price--sold-out { display: none; }

Go to price.liquid assuming you are on dawn theme.
Then,
Add a condition on price__regular div.
You can add whatever logic you want on it.

Results:
My Tuxedo doesn’t show price because the price is $0.

Let me know if you have further questions or need help on anything else.

1 Like

Wonderful, this worked perfectly! I wasn’t sure what to write (or where to put it).

You were correct - Dawn theme. I was able to easily locate the price.liquid file and add the code you highlighted + endif section at the end. Thank you so much!

I’m glad that was what you wanted. Again, don’t hesitate to reach out to me if you have further issues down the road.
Taknify
Tweek your store

Hey @Taknify Can you help me with a different solution approach for the same code you shared ?

1, hide the price of the product when it is “zero” from both the product card and product details page , Also remove the add to cart button and show a different button with a custom link ? Can you help me for this ?

1 Like

I’m trying to do the same. Will let you know if I come up with a solution.

Is there someone who knows where to add it in the Focal theme?

Hello,

Since this is a paid theme, I am not able to view the code to make changes. If you can provide the code or something so I can check, I can likely help you further on it.

Hi, can you specifically paste what to write if I don’t want to display a product price set at $0? I copied exactly what you wrote here and it’s not working. I have the dawn theme

Do you mind sending me a message with your store name so I can take a look?

Thanks,
Taknify

Hi,

I’ve tried adding the code to the price.liquid as well, but unfortunately this isn’t working for me either.

So I have collections where some products will have no price (price = £0), but others will have a price. The ones with price = £0 will need a “request code” button instead of “add to cart”.

we work with the theme Dawn.

Thanks

nothing changes … tried for 2 days (your code seems cut off or incomplete anyway)
bare in mind most people here are complete newbies … so i cut and copy your code and nothing happens

{% if product.price > 0 %}


{{ money_price }}

{% endif %}

{%- if product.quantity_price_breaks_configured? -%}
{%- if show_compare_at_price and compare_at_price -%}
{%- unless product.price_varies == false and product.compare_at_price_varies %}

{{- ‘products.product.price.regular_price’ | t -}}



{% if settings.currency_code_enabled %}
{{ compare_at_price | money_with_currency }}
{% else %}
{{ compare_at_price | money }}
{% endif %}


{%- endunless -%}
{%- endif -%}
{{ ‘products.product.price.regular_price’ | t }}

{{- ‘products.product.volume_pricing.price_range’ | t: minimum: money_price_min, maximum: money_price_max -}}

{%- else -%}
{{ ‘products.product.price.regular_price’ | t }}

{{ money_price }}

{%- endif -%}

{%- unless product.price_varies == false and product.compare_at_price_varies %} {{ 'products.product.price.regular_price' | t }} {% if settings.currency_code_enabled %} {{ compare_at_price | money_with_currency }} {% else %} {{ compare_at_price | money }} {% endif %} {%- endunless -%} {{ 'products.product.price.sale_price' | t }} {{ money_price }}
{{ 'products.product.price.unit_price' | t }} {{- product.selected_or_first_available_variant.unit_price | money -}} /  {{ 'accessibility.unit_price_separator' | t }}  {%- if product.selected_or_first_available_variant.unit_price_measurement.reference_value != 1 -%} {{- product.selected_or_first_available_variant.unit_price_measurement.reference_value -}} {%- endif -%} {{ product.selected_or_first_available_variant.unit_price_measurement.reference_unit }}

( https://www.cre8-health.co.uk/ )

I finally figured it out!!!

Green = New Code

Blue = Existing Code

{% if product.price > 0 %}

{{ ‘products.product.price.regular_price’ | t }}

{{ money_price }}
{% endif %}