Blog Sections Open
Displaying Products in Slides, Four per Group
A practical storefront pattern for showing grouped products in sliders and category tabs on Evolution CMS commerce builds.
Commerce layouts often need grouped output rather than a flat product list. the article behind this post described two typical storefront tasks: output products in slides, four items per group, and switch category-specific product blocks inside tabs.
The important lesson is that both tasks depend more on the output structure than on the product query itself. If you want groups of four, treat the list as a grouped presentation problem, not just a bigger product query.
Grouped slider idea
The original project used category-specific queries and separate chunk layouts for alternating slides. That is a reasonable approach when the slider library expects a fixed HTML structure and the store only needs a few curated sections.
Tab-based category output
[[!msProducts?
&groupby=`msCategory.id`
&parents=`5`
&includeThumbs=`medium`
&includeTVs=`1`
&tpl=`slideProductTplUp`
&tplOdd=`slideProductTplDown`
&includeContent=`1`
]]
If the tabs do not react correctly, the first thing to verify is the front-end layer: matching tab IDs, active classes, and JavaScript initialization. Multiple product queries are not the real problem by themselves. Broken tab markup usually is.
Practical rule
- keep each tab bound to a single, explicit category source
- group items in presentation chunks rather than forcing one huge mixed query
- test the tab HTML and JavaScript separately from the data output
- limit the product count per tab to what the slider really needs
For real storefronts, clean category boundaries and predictable front-end markup are usually more valuable than chasing a single “universal” query. Build the slider and tab structure first, then fit the product output into it deliberately.
Calling FormLister from Blade on Evolution CMS 2.0.3
A troubleshooting guide for FormLister calls inside Blade templates on Evolution CMS 2.x projects.
Localization in Evolution CMS 3 with Laravel-Style Translations
A practical guide to Laravel-style localization in Evolution CMS 3, including .htaccess routing, locale config, and translation namespaces.