Skip to main content

Collection Grid

Displaying Collections in Your Store

The Collection Grid app block lets you showcase collections in a visually appealing grid layout. It automatically adapts to your store's context:

  • On collection pages: Displays child collections (subcollections) of the current collection
  • On other pages: Shows root-level collections (those without a parent collection)

This is particularly useful when you want to display subcollection images above your product list, helping customers navigate deeper into your catalog.

Collection grid demo screenshot

Adding Collection Grid to Your Theme

How to Enable Collection Grid

1. Open your Online Store theme editor

theme editor screenshot

2. Navigate to the page where you want to add the collection grid

  • For collection pages, select the Collections template from the top bar
  • For other pages (like your homepage), navigate to that page

theme editor screenshot

3. From the left menu, click Add block or Add section and select Collection Grid from the Smart Collection Pro app

theme editor screenshot

4. Configure the grid settings from the right menu

You can adjust various settings such as spacing, layout, number of columns, and display options directly from the theme editor.

theme editor screenshot


Advanced Customization

If the built-in configuration options don't meet your needs, you can use custom CSS variables to fine-tune the appearance of your collection grid.

How to Add Custom CSS

1. From the theme editor, open Theme settings (usually at the bottom of the left sidebar)

2. Scroll down to the Custom CSS section

css edit screenshot

warning

Shopify applies a hard limit of 1,500 characters on Custom CSS. If you need more than 1,500, it's possible to update the theme's code directly. Our team can help you achieve this. Feel free to contact us.

3. Add your custom styles to the text field

Basic example - Customize title color and padding:

scp-collection-grid {
--scp-cg-title-color: #342245;
--scp-cg-title-padding: 2rem;
}

Advanced example - Different styles for mobile devices:

/* This is required to get the container query below to work */
.app-block-scp-collection-grid {
container-type: inline-size;
container-name: collection-grid;
}

/* Desktop style */
scp-collection-grid {
--scp-cg-title-padding: 1rem;
}

/* Mobile style */
@container collection-grid (max-width: 750px) {
scp-collection-grid {
--scp-cg-title-padding: 0;
}
}

4. Click Save to apply your changes

Your custom styling will now be applied to the collection grid throughout your store.

Available CSS Variables

Title Styling

VariablePurpose
--scp-cg-title-colorText color of collection titles
--scp-cg-title-background-colorBackground color behind titles: adapts to the title width (default: transparent)
--scp-cg-title-wrapper-background-colorBackground color behind titles: fills the whole space horizontally
--scp-cg-title-paddingSpacing inside the title area
--scp-cg-title-marginSpacing around the title area
--scp-cg-title-border-radiusRounded corners for title background
--scp-cg-title-text-wrapHow the title text wraps (e.g. nowrap, balance)

Card Styling

VariablePurpose
--scp-cg-background-colorBackground color of collection cards
--scp-cg-paddingInner spacing of the card (must include a unit, e.g. 10px)
--scp-cg-border-widthThickness of card border
--scp-cg-border-colorColor of card border
--scp-cg-border-styleBorder style (solid, dashed, etc.)
--scp-cg-card-widthOuter width of each card
--scp-cg-card-heightOuter height of each card
--scp-cg-thumbnail-object-fitHow images fit within their container (cover, contain, etc.)
--scp-cg-thumbnail-background-colorBackground color behind collection images
--scp-cg-thumbnail-heightHeight of the card thumbnail area
--scp-cg-thumbnail-displayDisplay mode of the thumbnail (e.g. none to hide it)
--scp-cg-thumbnail-aspect-ratioAspect ratio applied to thumbnails (e.g. 1 / 1, 16 / 9)
--scp-cg-image-widthWidth of the image inside the thumbnail

Card Inner Layout

Controls the flex container that wraps the card's contents (thumbnail, title, etc.).

VariablePurpose
--scp-cg-card-inner-widthWidth of the inner content wrapper
--scp-cg-card-inner-heightHeight of the inner content wrapper
--scp-cg-card-inner-displayDisplay mode of the inner wrapper (default: flex)
--scp-cg-card-inner-flex-directionDirection of inner content (column, row, etc.)
--scp-cg-card-inner-justify-contentMain-axis alignment of inner content (center, space-between, …)
--scp-cg-card-inner-align-itemsCross-axis alignment of inner content (center, flex-start, …)

Grid & Layout

Controls how cards are arranged on the page.

VariablePurpose
--scp-cg-columnsOverride the number of columns set in the block settings
--scp-cg-grid-displayDisplay mode for the container (grid or flex)
--scp-cg-grid-flex-wrapWrap behavior when in flex mode (wrap, nowrap)
--scp-cg-grid-justify-contentHorizontal alignment of items inside the container
--scp-cg-grid-margin-leftLeft margin applied to the grid
--scp-cg-grid-margin-rightRight margin applied to the grid

Used when the block is displayed as a carousel.

VariablePurpose
--scp-cg-carousel-button-sizeDiameter of the prev/next buttons (default: 34px)
--scp-cg-carousel-button-background-colorFill color of the prev/next buttons (default: #FFF)
--scp-cg-carousel-button-border-colorBorder color of the prev/next buttons (default: #BBB)
--scp-cg-carousel-button-horizontal-offetHorizontal offset of the buttons from the carousel edge (default: 10px)

Controls the chevron icon drawn inside each navigation button.

VariablePurpose
--scp-cg-carousel-arrow-sizeLength of the arrow chevron (default: 9px)
--scp-cg-carousel-arrow-colorColor of the arrow (default: #000)
--scp-cg-carousel-arrow-thicknessThickness of the chevron strokes (default: 2px)
--scp-cg-carousel-arrow-bar-thicknessThickness of the optional arrow bar (default: 2px)
--scp-cg-carousel-arrow-bar-widthWidth of the optional arrow bar (default: 9px)

The track shown below the carousel that reflects the scroll position.

VariablePurpose
--scp-cg-carousel-scroll-indicator-displayShow or hide the scroll indicator (e.g. none)
--scp-cg-carousel-scroll-indicator-heightHeight of the indicator track (default: 5px)
--scp-cg-carousel-scroll-indicator-backgroundBackground color of the track (default: #DDD)
--scp-cg-carousel-scroll-indicator-border-radiusRounded corners for the track (default: 3px)
--scp-cg-carousel-scroll-indicator-marginSpacing around the track (default: 6px 0)

The draggable handle inside the scroll indicator.

VariablePurpose
--scp-cg-carousel-scrollbar-backgroundColor of the scrollbar thumb (default: #777)
--scp-cg-carousel-scrollbar-widthWidth of the scrollbar thumb (default: clamp(50px, 15%, 200px))
--scp-cg-carousel-scrollbar-leftLeft position of the thumb (advanced; usually computed automatically)
--scp-cg-carousel-scrollbar-rightRight position of the thumb (advanced; usually computed automatically)

Controls the sizing of each card slide inside the carousel.

VariablePurpose
--scp-cg-carousel-item-flexFlex shorthand for each item (controls how slides size to fit --scp-cg-columns)
--scp-cg-carousel-item-widthExplicit width of each carousel item
note

If you need more customization, our team is happy to understand your requirements and add the necessary options. Feel free to contact us.