A user wants to automatically shuffle featured products on their Dawn 2.0 theme landing page so customers see different items with each visit, rather than the same 12 products repeatedly.
Technical Approaches Discussed:
Liquid limitations: Shopify’s Liquid templating language cannot randomize products in loops natively
JavaScript solution: Load more than 12 products via Liquid, then use JS to randomize and display only 12 on each page load
Caching concerns: Liquid-only solutions may not deliver truly dynamic results due to caching issues
Recommended Solutions:
Use a dedicated app for proper implementation
Employ automation tools like Shopify Flow or Mechanic to manage collection data directly
Custom scripting through Mechanic (requires development work)
The consensus is that while JavaScript workarounds exist, using an app or automation platform provides the most reliable, maintainable solution without modifying theme code extensively. The discussion remains open with offers for custom implementation assistance.
Summarized with AI on October 23.
AI used: claude-sonnet-4-5-20250929.
Is there a way to have my Featured Products automatically shuffle on my landing page? I want my customers to see all different products when they visit my site - not the same 12 products.
I’m in the process of switching to Dawn 2.0 theme but I am holding off until I can change this.
It can’t be done with liquid; actually in liquid we don’t have any option to randomize the products in a loop.
But yes with JavaScript the basic idea is we have to call more than 12 products in a loop and with JS have to randomize and display only 12. In this every time when users visit they will find different 12 featured products.
I know it’s too late but if you are still looking for shuffling products for the featured product section on a landing page. I have the solution for implementing it via JS and liquid as well.
Hello, we saw your reply to this post about shuffling products in Featured Collections. We want to achieve this without installing an app. Do you have a solution that may simply involve updating a snippet of code in our theme? Thanks so much
To do this properly does require either also doing this with javascript , or more sanely just use an app.
Otherwise it may look okay with lazy look but it won’t always deliver actual dynamic results, or good randomization, only through liquid rendering for various reasons; especially cachi’ng.
The sanest way really is with an app or automation either in flow or mechanic to take over the collection data itself so the theme can be left alone. and the collection can’t always be an automatic one the app/automation takes that over.