Shopify themes, liquid, logos, and UX
Hi, would really appreciate some help with this – been trying to follow some threads on this topic but to no avail.
I would like to have the second image of each product revealed on hover. Am using Debut theme.
Thanks very much!
My site is www.curiouslah.com
Solved! Go to the solution
This is an accepted solution.
Thanks for update code
also, please add the below code.
1. Go to Online Store->Theme->Edit code
2. Asset->/theme.scss.liquid->paste below code at the bottom of the file.
.grid-view-item__title {
margin-top: 20px;
}
.grid-view-item__vendor, .price__vendor {
display: none;
}
Hello,
Welcome to the Shopify community!
and Thanks for your Good question.
Hi, thanks for the link - I tried following some of the suggestions there but it didn't work.
Then I used this: https://www.youtube.com/watch?v=9uxSrOxxZpY which did work, but now there are some issues..
Code used for Reveal Module in theme.scss.liquid :
/* ===============================================
// Reveal module
// =============================================== */
.has-secondary.grid-view-item__link img.secondary{
display:none;
}
.has-secondary.grid-view-item__link:hover img.secondary{
display:block;
}
.has-secondary.grid-view-item__link:hover img.grid-view-item__image{
display:none;
}
@media screen and (min-width:767px){
.has-secondary.grid-view-item__link img.secondary{
display:none;
}
.has-secondary.grid-view-item__link:hover img.secondary{
display:block;
}
.has-secondary.grid-view-item__link:hover img.grid-view-item__image{
display:none;
}
}
@media screen and (max-width:767px){
.has-secondary.grid-view-item__link img.secondary{
display:none;
}
}
Code used in product-card-grid.liquid :
{% unless grid_image_width %}
{%- assign grid_image_width = '600x600' -%}
{% endunless %}
<div class="grid-view-item{% unless product.available %} product-price--sold-out grid-view-item--sold-out{% endunless %}">
<a class="grid-view-item__link {% if product.images.size > 1 %} has-secondary{% endif %}" href="{{ product.url | within: collection }}">
<img class="grid-view-item__image" src="{{ product.featured_image.src | img_url: grid_image_width }}" alt="{{ product.featured_image.alt }}">
{% if product.images.size > 1 %}
<img class="secondary" src="{{ product.images.last | img_url: grid_image_width }}" alt="{{ product.images.last.alt | escape }}">
{% endif %}
<div class="h4 grid-view-item__title">{{ product.title }}</div>
{% if section.settings.show_vendor %}
<div class="grid-view-item__vendor">{{ product.vendor }}</div>
{% endif %}
<div class="grid-view-item__meta">
{% include 'product-price', variant: product %}
</div>
</a>
</div>
The issues are: (see www.curiouslah.com home page for reference)
1) No padding/spacing between the product images and product titles, that was with the original code
2) For products with a vendor, the vendor name is shown twice
Any ideas how to fix this? Thank you!
Thanks for store details
sorry but I can see this code do you have added?
Sorry, I changed it back to the original code again just now.
Have switched the code to the one mentioned above, so you can see the issues with the padding and vendor title.
Thanks!
This is an accepted solution.
Thanks for update code
also, please add the below code.
1. Go to Online Store->Theme->Edit code
2. Asset->/theme.scss.liquid->paste below code at the bottom of the file.
.grid-view-item__title {
margin-top: 20px;
}
.grid-view-item__vendor, .price__vendor {
display: none;
}
Thank you very much! This worked!
Thanks for update and your compliment.
Hi, what do I do if I want to reveal the second image as well but I do not have a theme.scss.liquid?
I can only see theme.css.liquid or theme.scss
Thank you!
Thanks
can you please try this
Sure, thank you!
Hi Ketan Kumar,
I tried the link and the steps do not work for me... is there a reason why
HEllo, @Twooogirlsco
It can be done by doing some code customization. Please take the help of a developer and hire Shopify Expert or me
noted. how much do you charge for this hover?
i have send PM
Hello,
I've just tried so many different ways from YT tutorials and have just done your way and I'm still getting the images stacked on each other...
website link - p/w: couture123
I'm not sure if there is an app blocking the feature?
Please help, thank you
All good I have resolved this issue now. Would love to know how to make my image on my landing page zoom when hovered. It is just a 'Text Columns with Images' image, not a product image. Would love some more interaction with it if possible please.
yes please show me issue
I popped my website details above if you want to have a look there or here is a screenshot - they are stagnent photos and I'd like to either have it zoom in when I hover over them (1st preference) or click on them to purchase and I can remove the buttons (that bit I know how to do haha)
yes please try this code
1. Go to Online Store->Theme->Edit code
2. Asset->/theme.css ->paste below code at the bottom of the file.
.feature-row__image-wrapper .feature-row__image {
transition: all 0.9s;
}
.feature-row__image-wrapper:hover .feature-row__image {
transform: scale(1.1);
}
Thank you so much, you're incredibly helpful.
I have one last question and then the site is done! 🙂 😉 I really appreciate your help.
My header logo is the same file/image on all pages, however on the product pages it comes up with a blurry background whereas the file is a transparent background. any suggestions pls?
yes please share store url
@KetanKumar Can you please help me? When on my products on mobile, the menu bar is disabled and the logo in the header has a weird box around it - can you please take a look? www.ballooncouture.com.au (from your phone)
Hi @KetanKumar Can you please help me with my Debut theme looks like the three dots from the slider are all the way to the right I am not sure why. Also how can I make the slider button background transparent?
In advance thank you so much for your help!
Sorry you are facing this issue, it would be my pleasure to help you.
Welcome to the Shopify community!😊
Thanks for your good question.
Please share your site URL,
I will check out the issue and provide you a solution here.
Hello! I got this working well but is there a way to hide the second image when not hovering? I'm using an image with a transparent background as the first image and this shows what's underneath. Here is an example page https://iamdeadly.com/collections/i-am-sin
Got it working on Debut theme but when a product only has one image it shows a white square with No-Image. How do I change that so it just shows the main image when a product only has one image?
yes please show me issue images
i have check its working fine doesn't issue
Hi! I am also using the Debut theme and would like to have the second image revealed on hover. Is it possible to have the full code displayed and exactly where to add it? Thank you so much!
Thanks for post
yes can you please flow this step
Thank you for your quick reply. However, I followed the directions step by step and it is not working for me. Not sure what I did wrong. Any other advice?
Thanks for it
It can be done by doing some code customization. please send me a personal message and we can discuss what you'd like
Thank you so much! I will be in touch soon.
Thanks for your responose
hi @KetanKumar
My debudt theme is 17.7 how come i cant find any css.liquid file?
I also want to try this hover effect.
Effy.
it can be done some custom code
Hi,
Actually what I was look for and came across this article is to stop the behavior in the shopping cart page, when a user 1 product with the quantity button showing 1, if he will change it to zero it will automatically delete the item from the cart, no warrning.
Any idea how this case be changed?
Thanks!
if possible to share video further issue
Hey Ketan, I somehow managed to make it work with the previous mentioned steps from this post however I have one little problem. My images are literally doubled.
Can you give it a look and tell me how can I remove non-rotatable pictures of my products?
Here's the photo to better understand what I am asking for.
https://hustlebabe-shop.myshopify.com/ - password:009900
this only singale image
The upper row that I've marked, I want to remove it and have only rotatable product images to stay.
yes, please add this code
1. Go to Online Store->Theme->Edit code
2. Asset->/theme.css ->paste below code at the bottom of the file.
@media screen and (min-width: 767px) {
.has-secondary.grid-view-item__link:hover img.secondary {display: none;}
.has-secondary.grid-view-item__link:hover img.grid-view-item__image {display: block;}
}
This didn't help at all. I assume you didn't understand what I'm trying to achieve. There are duplicated pictures at the moment, right? One is static and the other is rotatable (hover over display second image), right? I want to remove all static product images and have ONLY rotatable ones displayed.
yes but what about a single image? at that time show only one
None of the products are single image, they are just displayed like that on site therefore I want to remove them and leave only double images.
https://hustlebabe-shop.myshopify.com/collections/woman - 009900
Go to this link. The images I have crossed, I want to remove because they DON'T rotate. The others that rotate, I want to keep them. Can I achieve that somehow?
I will create separate post and try to explain as best as I can what I am looking for. Thank you once again for your willingness to help !
can you try this code
1. Go to Online Store->Theme->Edit code
2. Asset->/theme.css ->paste below code at the bottom of the file.
#shopify-section-collection-template .grid-view-item.product-card {
display: none;
}
Well done and big thank you! Solved my problem.
One more thing, how do I center the next now? I will attach the photo below so you can see what I a referring to.
Also, referring to the issue you already helped me fix, how do I do the same for the photos on the Home Page, it's a featured collection and I want only rotating photos to show. Thanks in advance man !
oh sorry but i can't see your store now password protect and passwords page i can't see button
Oh sorry, I got it back for you 🙂 Check it out
Can I expect any answer for this issue? Hopefully yes, I thank you in advance.
Also, new password for the site is messaged to you, check it out.
yes i have checked its work
Hi Ketan,
Tried adding this code but the hover didn't work.
We'd like it so that if you hover on the first image, it shows the second image please. Can we have it on the homepage products but also on each product page itself too?
Thanks,
Ella
Hello,
I can not find theme.scss.liquid, just theme.css how can I do it?
Sorry you are facing this issue, it would be my pleasure to help you.
Welcome to the Shopify community!😊
Thanks for your good question.
Please share your site URL,
I will check out the issue and provide you a solution here.
Hi There, I have the Debut Theme, where do I add this code to please I dont seem to have theme.scss.liquid or the alternatives mentioned on the other thread. Thanks
can you please send store url
i have check this customization On product hover or let me know DM
@JessBo Thanks, If you're comfortable working with coding languages (eg. HTML, JavaScript, CSS, and Liquid), then you can try to follow the custom coding provided by or Send DM
Hi There
My website is www.studiobhomeware.com
I have also tried to use the coding in the embedded link above and this just ended up with two images been shown one over another rather than a hoover
Thanks
if you are able to code try above code and let me know it done customization codde
Thanks you.
Which coding should I be following there’s a few linked above and I am not entirely sure I follow which one you are referring to? Some links say to update the theme and product coding and some just suggest the Theme.
Please note my store does not have theme.scss.liquid so do I use theme.css or theme.liquid
thank you
https://www.huratips.com/tech-tips/how-to-make-product-image-change-when-mouse-over-in-shopify.html
Thank you - when I do this it results in the two images being shown, please see a preview of my duplicate theme where I have added the code below
https://gsho2r052aj8c5bf-53377695903.shopifypreview.com
can you please update this code product-card-grid
{% comment %}
Renders a product card using "Grid" style
Accepts:
- max_height: {Number} Maximum height of the product's image (required)
- product: {Object} Product Liquid object (required)
- show_vendor: {Boolean} Show the product's vendor depending on the section setting (optional)
Usage:
{% include 'product-card-grid', max_height: max_height, product: product, show_vendor: section.settings.show_vendor %}
{% endcomment %}
<div class="grid-view-item{% unless product.available %} grid-view-item--sold-out{% endunless %} product-card">
<a class="grid-view-item__link grid-view-item__image-container full-width-link" href="{{ product.url | within: collection }}">
<span class="visually-hidden">{{ product.title }}</span>
</a>
{% capture img_id %}ProductCardImage-{{ section.id }}-{{ product.id }}{% endcapture %}
{% capture wrapper_id %}ProductCardImageWrapper-{{ section.id }}-{{ product.id }}{% endcapture %}
{%- assign preview_image = product.featured_media.preview_image -%}
{%- assign img_url = preview_image | img_url: '1x1' | replace: '_1x1.', '_{width}x.' -%}
{% unless preview_image == blank %}
{% include 'image-style', image: preview_image, height: max_height, wrapper_id: wrapper_id, img_id: img_id %}
{% endunless %}
<div class="product-card__image-with-placeholder-wrapper" data-image-loading-animation>
<div id="{{ wrapper_id }}" class="grid-view-item__image-wrapper product-card__image-wrapper js">
<div style="padding-top:{% unless preview_image == blank %}{{ 1 | divided_by: preview_image.aspect_ratio | times: 100 }}%{% else %}100%{% endunless %};">
<img data-swift-lazy="1" loading="lazy" id="{{ img_id }}"
class="grid-view-item__image lazyload on-normal"
alt="{{ preview_image.alt }}"
data-src="{{ img_url }}"
data-widths="[180, 360, 540, 720, 900, 1080, 1296, 1512, 1728, 2048]"
data-aspectratio="{{ preview_image.aspect_ratio }}"
data-sizes="auto"
data-image>
<img class="grid-view-item__image lazyload on-hover" src="{{ product.images[1] | img_url: 'master' }}" alt="{{ product.images[1] | escape }}" />
</div>
</div>
</div>
<noscript>
{% capture image_size %}{{ max_height }}x{{ max_height }}{% endcapture %}
<img data-swift-lazy="1" loading="lazy" class="grid-view-item__image" src="{{ preview_image | img_url: image_size, scale: 2 }}" alt="{{ preview_image.alt }}" style="max-width: {{ max_height | times: preview_image.aspect_ratio }}px;">
</noscript>
<div class="h4 grid-view-item__title product-card__title" aria-hidden="true">{{ product.title }}</div>
{% include 'product-price-listing', product: product, show_vendor: show_vendor %}
</div>
<style>
.on-hover {
opacity: 0;
}
.product-card:hover .on-hover {
opacity: 1;
}
</style>
Thanks so much, that has worked however there seems to be an added scroll tab on the first section of the website which you will be able to see on
Also is it possible to make this hover to the last image rather than the second image?
Many thanks
Jess