Make a specific image disappear in the images array

Auplant
New Member
2 0 0

Just for testing purposes, I'm trying to figure out how to make one of the product images disappear through code, in this case the last product image

 

I tried adding this code in product-grid-item.liquid, although it doesn't work, and I'm wondering how I could change the code to get this working.

 

{% if product.images == product.images.last%}
{% assign image = null %}
{% endif %}

 

0 Likes

@Auplant wrote:

Just for testing purposes, I'm trying to figure out how to make one of the product images disappear through code, in this case the last product image

 

I tried adding this code in product-grid-item.liquid, although it doesn't work, and I'm wondering how I could change the code to get this working.

 

{% if product.images == product.images.last%}
{% assign image = null %}
{% endif %}

 



Hello 

 

You can use css to hide the last image 

li:nth-last-child(n) {
  property: value;
  property: value;
  ...
}

 Instead of your class name instead of "li"

If helpful then please Like and Accept Solution. Free Website Review and advice for sale from Hire us
Shopify Conversion Experts | Shopify Private App | Custom Theme Development | Custom Modifications In To Shopify Theme | Shopify SEO | Digital Marketing | Site Speed Optimization | Performance Site Audit
For Quick Chat Whats app | Email: pallavi@oscprofessionals.com | Skype : oscprofessionals-87
0 Likes
Auplant
New Member
2 0 0

Ok cool, I guess css is the most practical way to do this, although I was trying to fix an error with the product image hover. It works fine when the product has 3 images, but the last product image overlaps the first product image in the case when the product has only two images.

Perhaps it is better to adjust the reveal code in css.

0 Likes
PaulNewton
Shopify Partner
2571 136 453

{% if product.images == product.images.last%}
{% assign image = null %}
{% endif %}

 

That is trying to match an object array to an element in the array so the condition will never be met.

 

You can try inside the forloop that is outputting images testing if that's the last iteration of the forloop then setting null or {% break %} the loop.

{% for image in product.images %}
....

{% if forloop.index.last %}
{% assign image = null %}
{% endif %}

....
{% endfor %}

Or comparing to product.images.last 

 

{% for image in product.images %}
....

{% if image == product.images.last%}
{% assign image = null %}
{% endif %}

....
{% endfor %}

 

 

 

Problem Solved? ✔️Accept and ? Like the solution so you can help others.
Buy me a coffee ☕ paypal.me/paulnewton or donate to eff.org
Confused? Busy? Buy a custom solution paull.newton+shopifyforum@gmail.com
0 Likes