Skip to main content

Install Video UGC Carousel

Instructions to add the LoudCrowd Video UGC web component to your eCommerce page

C
Written by Customer Success
Updated over a month ago

Overview

The Video UGC Carousel is a web component that displays shoppable video content on your eCommerce pages, including Product Detail, Collection, Home and other product landing pages. This guide covers installation for both Shopify stores and custom eCommerce sites.

Prerequisites

Before installing the Video UGC Carousel, ensure:

  • LoudCrowd is installed on your eCommerce store, including:

    • LoudCrowd SDK installed on all target eCommerce pages (or base page template, which includes all)

    • LoudCrowd App connected to your eCommerce site

  • You have selected a dedicated Storefront page that contains the video content you want to show on your eCommerce page(s). You can add video content to this page from a social media account or directly uploading to the page.

  • Your video content has been tagged with the products that you want to make shoppable from video UGC.

Shopify Installation

Step 1: Add the App Block

  1. From your Shopify admin, go to Online Store > Themes

  2. Click Customize on your current theme

  3. Navigate to a page template (example: product page)

  4. Click Add block in the section where you want the carousel

  5. Search for "LoudCrowd Video UGC Carousel" under Apps

  6. Select the block to add it to your page

Step 2: Configure the Block

After adding the block, configure these required settings:

  1. Ambassador ID: Enter the LoudCrowd ambassador ID whose videos you want to display. This is the ID located after lc_ambassador_id= in your Storefront URL

  2. Product Selection: Choose one option:

    • Enable "Auto-detect product from URL" (for product detail pages only). This automatically detects the product shown on a product detail page.

    • OR manually select a specific product. You can pick any product from your catalog to include all video UGC tagged with that product.

Step 3: Customize Display Settings

Optional settings to match your store's design:

  • Carousel Title: Add a heading above the videos (default: "See It In Action")

  • Title Font Size: Adjust from 10-48px (default: 16px)

  • Video Thumbnail Size: Set width from 80-300px (default: 140px)

Step 4: Save and Publish

Click Save in the theme editor to apply your changes.

Custom eCommerce Installation

Step 1: Add the Web Component to your Target eCommerce Page(s)

Place the component where you want the carousel to appear:

<shopwith-video-carousel-block lc-ambassador-id="YOUR_AMBASSADOR_ID" use-url-product="true"> </shopwith-video-carousel-block>

Step 2: Configuration Options

The component accepts these attributes:

Attribute

Description

Required

Example

lc-ambassador-id

Ambassador ID to filter videos

Enter the LoudCrowd ambassador ID whose videos you want to display. This is the ID located after lc_ambassador_id= in your Storefront URL

Yes

"123456"

use-url-product

Auto-detect product from page URL

No*

"true"

product-handle

Specific product handle

No*

"blue-shirt"

product-id

Platform product ID

No*

"7654321"

header-text

Title above carousel

No

"Customer Videos"

*One product identification method is required: either use-url-product, product-handle, or product-id

Example Implementations

<!-- Auto-detect product from URL --> 
<shopwith-video-carousel-block
lc-ambassador-id="123456"
use-url-product="true"
header-text="See it in action">
</shopwith-video-carousel-block>

<!-- Specific product handle -->
<shopwith-video-carousel-block
lc-ambassador-id="123456"
product-handle="blue-cotton-shirt"
header-text="Customer Reviews">
</shopwith-video-carousel-block>

Responsive Behavior

The carousel automatically maintains video aspect ratios and adjusts layout for different screen sizes.

The carousel adapts to different devices:

  • Desktop: Shows navigation arrows and larger thumbnails

  • Tablet: Reduced thumbnail size, maintains arrows

  • Mobile: Touch-friendly scrolling, arrows hidden

CSS Styling Guide

For advanced customization, use CSS custom properties to style the component.

Container and Layout

shopwith-video-carousel-block { 
/* Container padding */
--shopwith-container-padding: 20px 0;

/* Gap between videos */
--shopwith-video-gap: 16px;
}

Header Styling

shopwith-video-carousel-block { 
/* Header typography */
--shopwith-header-font-size: 24px;
--shopwith-header-font-weight: 600;
--shopwith-header-font-family: 'Your Font', sans-serif;
--shopwith-header-line-height: 1.3;

/* Header spacing and color */
--shopwith-header-color: #333333;
--shopwith-header-margin: 0 0 20px 0;
}

Video Thumbnail Styling

shopwith-video-carousel-block { 
/* Video dimensions */
--shopwith-video-item-width: 160px;
--shopwith-video-item-height: 213px;
--shopwith-video-aspect-ratio: 9/16;

/* Video appearance */
--shopwith-video-border-radius: 8px;
--shopwith-video-object-fit: cover;
--shopwith-video-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);

/* Hover effects */
--shopwith-video-transition: transform 0.3s ease, box-shadow 0.3s ease;
}

Navigation Arrow Styling

shopwith-video-carousel-block { 
/* Arrow appearance */
--shopwith-carousel-arrow-color: #000000;
--shopwith-carousel-arrow-size: 8px;
--shopwith-carousel-arrow-background: rgba(255, 255, 255, 0.9);
--shopwith-carousel-arrow-border-radius: 50%;
}

Loading State Styling

shopwith-video-carousel-block { 
/* Skeleton loader appearance */
--shopwith-skeleton-background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
--shopwith-skeleton-border-radius: 4px;
}

Complete Styling Example

/* Custom branded carousel */ 
shopwith-video-carousel-block {
/* Brand colors and spacing */
--shopwith-container-padding: 40px 0;
--shopwith-header-color: #1a1a1a;
--shopwith-header-font-family: 'Montserrat', sans-serif;
--shopwith-header-font-size: 28px;
--shopwith-header-margin: 0 0 24px 0;

/* Modern video cards */
--shopwith-video-item-width: 180px;
--shopwith-video-border-radius: 12px;
--shopwith-video-box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
--shopwith-video-gap: 20px;

/* Subtle navigation */
--shopwith-carousel-arrow-color: #666;
--shopwith-carousel-arrow-background: rgba(255, 255, 255, 0.95);
--shopwith-carousel-arrow-size: 10px;
}

/* Hover state enhancement */
shopwith-video-carousel-block loudcrowd-media:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

Available CSS Variables Reference

Container Variables

  • --shopwith-container-padding: Padding around the entire component

Header Variables

  • --shopwith-header-font-size: Title text size

  • --shopwith-header-font-weight: Title font weight

  • --shopwith-header-color: Title text color

  • --shopwith-header-margin: Title spacing

  • --shopwith-header-line-height: Title line height

  • --shopwith-header-font-family: Title font family

Video Variables

  • --shopwith-video-item-width: Thumbnail width

  • --shopwith-video-item-height: Thumbnail height

  • --shopwith-video-gap: Space between videos

  • --shopwith-video-border-radius: Corner rounding

  • --shopwith-video-aspect-ratio: Video aspect ratio

  • --shopwith-video-object-fit: How video fills container

  • --shopwith-video-transition: Hover transition effects

  • --shopwith-video-box-shadow: Video shadow effect

Navigation Variables

  • --shopwith-carousel-arrow-color: Arrow icon color

  • --shopwith-carousel-arrow-size: Arrow icon size

  • --shopwith-carousel-arrow-background: Arrow button background

  • --shopwith-carousel-arrow-border-radius: Arrow button shape

Loading State Variables

  • --shopwith-skeleton-background: Loading skeleton gradient

  • --shopwith-skeleton-border-radius: Loading skeleton corners

Troubleshooting

Videos Not Appearing

  1. Verify the ambassador ID is correct

  2. Check that the ambassador has video content

  3. Ensure videos are tagged to the specified product

  4. Confirm the LoudCrowd SDK is loaded

Styling Not Applied

  1. Check CSS specificity - you may need to increase selector specificity

  2. Verify CSS custom property names are spelled correctly

  3. Ensure styles are loaded after the component

Component Not Rendering

  1. Check browser console for errors

  2. Verify all required attributes are provided

  3. Ensure JavaScript is enabled

  4. Confirm the SDK initialization event has fired

Did this answer your question?