@devcoders This was Motions Response:
Hi Monteara,
Thanks for the additional information and I appreciate your patience with me!
This feature is technically achievable within Motion, but it requires a deeper restructuring of how the product card media is rendered and updated.
In Motion, the collection grid is rendered through snippets/product-grid-item.liquid, but the image output is more complex than a single <img> tag.
A few important things your developer should review:
1. The image markup in Motion is not static.
The product card image is often wrapped in responsive containers and may use:
· srcset
· Lazy loading attributes
· Hover image wrappers
· Or theme-controlled JS that re-renders images
Simply replacing .grid-product__image src and srcset may not be enough because the theme may reinitialize the image element after load.
2. Event listeners may be conflicting.
Motion attaches its own click handlers to product cards and swatches.
Using e.preventDefault() and e.stopPropagation() can interfere with the theme’s native behavior, especially if Quick Add is enabled.
Your developer may want to:
· Target the media wrapper rather than just the <img>
· Ensure the script runs after the theme’s JS initializes
· Avoid disrupting the theme’s internal product card click logic
3. Quick Add is rendered separately.
The Quick Add modal does not use the same DOM structure as the collection grid. That’s why swatch active states aren’t syncing. It would require a separate implementation inside the Quick Add component.
4. Variant media handling
If some variants do not have featured_media assigned, variant.featured_media will return blank. That can cause the swap to fail silently. It’s important that each color variant has its own image assigned in the Shopify admin.
While we’re unable to directly embed or debug custom JavaScript modifications, the above should give your developer clear direction on where to focus within the theme structure. A Shopify developer experienced with theme customizations should be able to implement this behavior within Motion.
Please let us know if you have any further questions regarding the theme’s native functionality and we’re happy to help!
Hi Monteara,
Thanks for the additional information and I appreciate your patience with me!
This feature is technically achievable within Motion, but it requires a deeper restructuring of how the product card media is rendered and updated.
In Motion, the collection grid is rendered through snippets/product-grid-item.liquid, but the image output is more complex than a single <img> tag.
A few important things your developer should review:
1. The image markup in Motion is not static.
The product card image is often wrapped in responsive containers and may use:
· srcset
· Lazy loading attributes
· Hover image wrappers
· Or theme-controlled JS that re-renders images
Simply replacing .grid-product__image src and srcset may not be enough because the theme may reinitialize the image element after load.
2. Event listeners may be conflicting.
Motion attaches its own click handlers to product cards and swatches.
Using e.preventDefault() and e.stopPropagation() can interfere with the theme’s native behavior, especially if Quick Add is enabled.
Your developer may want to:
· Target the media wrapper rather than just the <img>
· Ensure the script runs after the theme’s JS initializes
· Avoid disrupting the theme’s internal product card click logic
3. Quick Add is rendered separately.
The Quick Add modal does not use the same DOM structure as the collection grid. That’s why swatch active states aren’t syncing. It would require a separate implementation inside the Quick Add component.
4. Variant media handling
If some variants do not have featured_media assigned, variant.featured_media will return blank. That can cause the swap to fail silently. It’s important that each color variant has its own image assigned in the Shopify admin.
While we’re unable to directly embed or debug custom JavaScript modifications, the above should give your developer clear direction on where to focus within the theme structure. A Shopify developer experienced with theme customizations should be able to implement this behavior within Motion.
Please let us know if you have any further questions regarding the theme’s native functionality and we’re happy to help!
Hi Monteara,
Thanks for the additional information and I appreciate your patience with me!
This feature is technically achievable within Motion, but it requires a deeper restructuring of how the product card media is rendered and updated.
In Motion, the collection grid is rendered through snippets/product-grid-item.liquid, but the image output is more complex than a single <img> tag.
A few important things your developer should review:
1. The image markup in Motion is not static.
The product card image is often wrapped in responsive containers and may use:
· srcset
· Lazy loading attributes
· Hover image wrappers
· Or theme-controlled JS that re-renders images
Simply replacing .grid-product__image src and srcset may not be enough because the theme may reinitialize the image element after load.
2. Event listeners may be conflicting.
Motion attaches its own click handlers to product cards and swatches.
Using e.preventDefault() and e.stopPropagation() can interfere with the theme’s native behavior, especially if Quick Add is enabled.
Your developer may want to:
· Target the media wrapper rather than just the <img>
· Ensure the script runs after the theme’s JS initializes
· Avoid disrupting the theme’s internal product card click logic
3. Quick Add is rendered separately.
The Quick Add modal does not use the same DOM structure as the collection grid. That’s why swatch active states aren’t syncing. It would require a separate implementation inside the Quick Add component.
4. Variant media handling
If some variants do not have featured_media assigned, variant.featured_media will return blank. That can cause the swap to fail silently. It’s important that each color variant has its own image assigned in the Shopify admin.
While we’re unable to directly embed or debug custom JavaScript modifications, the above should give your developer clear direction on where to focus within the theme structure. A Shopify developer experienced with theme customizations should be able to implement this behavior within Motion.
Please let us know if you have any further questions regarding the theme’s native functionality and we’re happy to help!
All the best,
Shandy
Archetype Themes Support Specialist
Archetype Themes | Help Center