Shopify themes, liquid, logos, and UX
Hi ,
Im looking to add text that generates a number based on the amount of colours available of that product.
So if there is a red green blue option, the collection grid page will show the primary red product, but it will also have below - available in 3 colours.
So far I have tried within product-card.liquid the below code but I keep getting 0 - it isn't processing the logic below the assign num=0
{% assign num = 0 %}
{% for option in product.options_with_values %}
{% if product.options_with_values == 'Colour' %}
{% for value in option.values %}
{% assign num = num | plus: 1 %}
{% endfor %}
{% endif %}
{% endfor %}
<p>There are {{ num }} more colours to choose </p>
Solved! Go to the solution
This is an accepted solution.
This has now worked for me :
For Dawn 2.0 (v3)
Insert the code into Snippets > main-product.liquid
I have placed this within the <div> product__info-wrapper - place it appropriately to where you would like it positioned.
I have set it to where there is 3 or less left in stock, this will appear.
{% comment %}Adds text when stock is equal to one below the price.{% endcomment %}
{% assign stock = 0 %}
{% for variant in product.variants %}
{%capture stock %}
{{ stock | plus:variant.inventory_quantity }}
{% endcapture %}
{% endfor %}
{%assign stock = stock | times:1%}
{% if stock < 3 %}
<span class="label inventory"> <strong>Only {{stock}} more left in stock!</strong> </span>
{% endif %}
Here is a screen-grab of it working :
This is an accepted solution.
This has now worked for me :
For Dawn 2.0 (v3)
Insert the code into Snippets > main-product.liquid
I have placed this within the <div> product__info-wrapper - place it appropriately to where you would like it positioned.
I have set it to where there is 3 or less left in stock, this will appear.
{% comment %}Adds text when stock is equal to one below the price.{% endcomment %}
{% assign stock = 0 %}
{% for variant in product.variants %}
{%capture stock %}
{{ stock | plus:variant.inventory_quantity }}
{% endcapture %}
{% endfor %}
{%assign stock = stock | times:1%}
{% if stock < 3 %}
<span class="label inventory"> <strong>Only {{stock}} more left in stock!</strong> </span>
{% endif %}
Here is a screen-grab of it working :
User | RANK |
---|---|
154 | |
136 | |
77 | |
71 | |
70 |
Explore the 30-30-30 rule, a dynamic social media strategy for new businesses. Learn how t...
By Trevor Sep 20, 2023Discover how to leverage the often overlooked footer of your ecommerce site to gain custom...
By Skye Sep 15, 2023In this blog, we’ll be shining a light on Shopify Partners, Experts, and Affiliates. Who a...
By Imogen Sep 13, 2023