YouTube Feed Integration: setup and help

Quick start

  1. Upload and install the mpryoutubeintegration ZIP in Modules > Module Manager.
  2. Click Configure. In YouTube Connection, leave Enable Module set to Yes.
  3. Enter real public Video URLs (Manual), one per line. You do not need an API key for this first test.
  4. In Display Settings, select Display Hook displayHome. Keep Layout > Layout Type at grid.
  5. In Video Info, select Player Mode embed for the lightbox or newtab for YouTube.
  6. Click Save, then open the storefront where the selected hook is rendered.
  7. Check the thumbnails, click a video, and verify playback or the YouTube destination. In embed mode, close the player and confirm playback stops.

Requires PrestaShop 1.6 or later and PHP 7.1 or later.

Setup manual

Installation and first configuration

On older PrestaShop versions, use the equivalent module installation page. Open this module through Configure whenever you need to return to its settings.

YouTube Connection

Setting Default What you do
Enable Module Yes Turn the standalone storefront feed on or off.
YouTube API Key Empty Enter a key for YouTube Data API v3 only if you want automatic channel or playlist retrieval.
Channel ID Empty Set the channel source and subscribe-button target. This expects the channel ID, not an @handle.
Channel Name Empty Set the channel link label in the titled feed header. Set Channel ID too so the link has a destination.
Playlist ID Empty Use this as the API source when present. It takes precedence over Channel ID.
Video URLs (Manual) Empty Enter supported public video URLs, one per line. These are also a fallback if no API videos are returned.

Display Settings

Setting Default What you do
Display Hook displayHome Choose displayHome, displayFooterBefore, displayFooter, displayLeftColumn, or displayRightColumn. Your theme must render the selected hook.
Section Title Our YouTube Channel Set the feed heading. Leave empty to hide it.
Show Subscribe Button Yes Show the channel subscribe link when Channel ID is set.
Subscribe Button Text Subscribe Set the button label.
Show on Mobile Yes Allow the feed for visitors detected as mobile by PrestaShop.

The header’s profile/channel link is nested inside the section-title block. Set a Section Title if you want that header link to appear. The separate follow/subscribe button has its own switch.

Layout

Setting Default What you do
Layout Type grid Choose grid or slider.
Number of Videos 6 Set a positive number. API requests are capped at 25 videos.
Columns (Desktop) 3 Choose 2, 3, or 4 grid columns.
Columns (Mobile) 1 Choose 1 or 2 grid columns.
Gap (px) 16 Set grid spacing in pixels.
Border Radius (px) 8 Set rounded item corners.
Hover Effect zoom Choose overlay, zoom, fade, or none.

Column and spacing controls apply to the feed layout. Review the carousel at your storefront's desktop and mobile widths.

Video Info

Setting Default What you do
Show Title Yes Show the video title and available channel-author line. This also wraps the formatted date beneath the title.
Show Duration Yes Show duration only when API video details include it.
Show Views Yes Show the formatted count when API statistics are available.
Show Date Yes Show a relative-date overlay and available formatted source date. The date beneath the title also requires Show Title and a non-empty title.
Player Mode embed Choose embed for an on-page lightbox or newtab for a YouTube tab.

Advanced

Setting Default What you do
Lazy Load Yes Load thumbnail/media images through JavaScript near the viewport. Disable if that loading is blocked.
Auto Scroll (Slider) No Automatically advance the carousel. This has no effect on grid/list output.
Scroll Speed (ms) 4000 Set the carousel interval in milliseconds.
Cache Duration 3600 Reuse retrieved data for this many seconds. Choices are 900, 1800, 3600, 7200, 21600, and 86400.

Manual videos, channel, and playlist sources

For manual videos, use these URL formats with a real 11-character YouTube video ID:

https://www.youtube.com/watch?v=ABCDEFGHIJK
https://youtu.be/ABCDEFGHIJK
https://www.youtube.com/embed/ABCDEFGHIJK
https://www.youtube.com/shorts/ABCDEFGHIJK

The example ID is a placeholder. Replace it with an available video. The parser extracts the ID and builds the watch URL, embed URL, and img.youtube.com thumbnail URL. It requests YouTube oEmbed for the title and author. A valid parsed ID still produces a card if oEmbed fails, but the title/author can be empty and the thumbnail/player can fail.

For an automatic source, enter YouTube API Key plus Playlist ID or Channel ID. With a playlist set, the module uses the playlistItems endpoint. Otherwise it uses search for the channel’s videos ordered by date. It then requests videos details for durations and statistics. The result is capped at 25 per API request. If no API videos are returned, it falls back to manual URLs. It does not retry Channel ID after a failed playlist request.

Manual mode has no duration, view count, or publish date. API date display uses the date supplied by the selected source. You display one configured feed; the module has no per-product video assignments. A product page can show the same feed if its theme renders the selected hook.

Player behavior

In Player Mode embed, the module’s JavaScript intercepts the thumbnail link and opens a lightbox. It fills a YouTube iframe URL with autoplay=1&rel=0. Use the close button, click the backdrop, or press Escape to close it. Closing clears the iframe source and stops playback.

In newtab mode, the link opens the YouTube watch page in a new tab. With JavaScript unavailable, the thumbnail link also leads to YouTube, though JavaScript-based lazy thumbnails may remain unloaded. The module does not control the remote player’s availability, ads, or account/video restrictions. Test the specific videos you intend to use.

Feed thumbnails are requested directly by the visitor's browser from their source URLs; manual videos use img.youtube.com. In embed mode, clicking a video also loads a youtube.com iframe. Selecting newtab avoids the on-page player but does not remove thumbnail requests. Lazy loading and clicking to play are not consent checks; the supplied thumbnail and player code has no built-in consent gate.

Cache and refresh

The feed cache uses this local file:

modules/mpryoutubeintegration/mpryoutube_feed_cache.json

Feed data is stored in one local JSON file per module installation, shared by shops using that directory. A storefront request fetches videos when the cache is missing or expired. No scheduled background worker refreshes this feed.

Use Clear Cache to delete the cached file. Saving the main settings also clears it. The next storefront request fetches fresh videos; existing cached content is not kept visible during that request.

Only nonempty results are saved. If retrieval fails or returns no videos, that request shows no feed and later storefront requests try again. An expired file may remain on disk, but its old videos are not served. API counts and relative dates reflect the cached response.

Configuration examples and theme adjustments

The examples below describe values to enter in the back-office forms. They are not shell commands. Replace account names, pin/video IDs, and credentials with real values. The theme hook must match Display Hook.

Manual product demo grid without an API key:

MPRYOUTUBE_ENABLED=1
MPRYOUTUBE_VIDEO_URLS=https://www.youtube.com/watch?v=ABCDEFGHIJK
https://youtu.be/LMNOPQRSTUV
https://www.youtube.com/shorts/WXYZabcdefg
MPRYOUTUBE_DISPLAY_HOOK=displayHome
MPRYOUTUBE_LAYOUT=grid
MPRYOUTUBE_POST_COUNT=3
MPRYOUTUBE_COLUMNS=3
MPRYOUTUBE_PLAYER_MODE=embed

Playlist slider with cached API fetching:

MPRYOUTUBE_ENABLED=1
MPRYOUTUBE_API_KEY=AIza...
MPRYOUTUBE_PLAYLIST_ID=PL...
MPRYOUTUBE_DISPLAY_HOOK=displayFooterBefore
MPRYOUTUBE_LAYOUT=slider
MPRYOUTUBE_POST_COUNT=6
MPRYOUTUBE_AUTO_SCROLL=1
MPRYOUTUBE_SCROLL_SPEED=4000
MPRYOUTUBE_CACHE_DURATION=3600

Accepted manual URL formats:

https://www.youtube.com/watch?v=ABCDEFGHIJK
https://youtu.be/ABCDEFGHIJK
https://www.youtube.com/embed/ABCDEFGHIJK
https://www.youtube.com/shorts/ABCDEFGHIJK

If your theme does not output the selected hook, add the matching PrestaShop hook call in the relevant Smarty template:

{hook h='displayFooterBefore'}

Theme CSS can target the module's storefront classes:

.mprfeed-youtube .mprfeed-title {
  font-size: 20px;
}

.mprfeed-youtube .mprfeed-follow-youtube {
  background: #cc0000;
}

.mprfeed-youtube .mprfeed-caption {
  min-height: 2.8em;
}

The feed cache uses this local file:

modules/mpryoutubeintegration/mpryoutube_feed_cache.json

Keep CSS and template changes in your theme.

Verification and troubleshooting

  • If the section is absent, check Enable Module, the source fields, Show on Mobile, and the selected hook. The module returns no section when no items are available.
  • Check that your theme calls displayHeader to load the stylesheet and JavaScript, and renders your selected display hook.
  • If images remain blank, inspect browser network errors. Try disabling lazy loading and check the image URLs.
  • If the layout is wrong, test the grid first, then verify the carousel at desktop and mobile widths.
  • If MPR Social Revolution has its YOUTUBE_ACTIVE setting enabled, this standalone feed is suppressed. This check reads the saved flag; it does not require Social Revolution to be currently enabled as a module.

Open the module’s Integrity page for configuration and hook checks. License, Support, and Update are maintenance pages. Test the actual destinations after changing account identifiers or feed sources.

Disable or uninstall

Set Enable Module to No and save to hide the feed while retaining its configuration. Uninstall through the module manager to remove this module’s configuration, local cache, and admin menu entries.

Questions

No questions about this module yet

Ask anything about installation, compatibility or setup. Answers appear here.

Known Issues

8

API key could not be saved from guided setup

ResolvedUpdated:
Fixed in: 1.0.21
Saving a YouTube API key from the setup dialog could fail with a configuration-save error. Leaving the key blank now preserves the existing key.

Invalid API-key submissions were accepted

ResolvedUpdated:
Fixed in: 1.0.21
Guided setup could accept an invalid API-key value instead of refusing the settings before saving.

Setup warning remained after saving

ResolvedUpdated:
Fixed in: 1.0.21
The configuration page could continue to show an outdated setup warning immediately after valid settings were saved.

Missing translations

ResolvedUpdated:
Fixed in: 1.0.21
Back-office labels now display in the selected shop language.

PHP 7.1 loading compatibility

ResolvedUpdated:
Fixed in: 1.0.16
The module could fail to load on PHP 7.1 because its bundled loading requirements were too restrictive.

Module administration could fail to open

ResolvedUpdated:
Fixed in: 1.0.15
Opening the module administration could stop with an error on shops missing the required price-formatting support.

Configuration page did not expose feed settings

ResolvedUpdated:
Fixed in: 1.0.12
The module configuration page showed a placeholder instead of usable feed settings.

Feed display missed video and subscribe information

ResolvedUpdated:
Fixed in: 1.0.12
The feed did not consistently receive its video list and subscribe-button settings for display.

Feature Requests

1

Implemented

Guided video-source setup

Implemented
Configure manual YouTube video URLs without an API key, or connect a channel or playlist with an API key, using guided setup checks.

Changelog

v1.0.132026-09-08

  • Addedcomplete FR/DE/ES/IT/PL translations
Older releases

v1.3.02026-04-20

  • Addedadmin menu management via MenuInstaller for streamlined module setup
  • AddedLicense management tab with key management and renewal options
  • Addedself-healing integrity checks for automatic diagnostics and repair
  • Addedcomplete FR/DE/ES/IT/PL translations

v1.2.02026-02-06

  • AddedPS 9 / Hummingbird theme compatibility
  • Addedplaylist support alongside channel display
  • Improvedlazy-load iframes — YouTube thumbnails load as images, iframe created on click
  • Fixedvideo grid overflow on 5-column layouts on 1440p screens

v1.0.02025-09-18

  • Initialrelease: YouTube channel and playlist video display for PrestaShop
  • InitialGrid layout with configurable column count and video thumbnails
  • InitialBack-office configuration for channel ID, API key, and layout type
  • InitialCompatible with PS 1.7.x and PS 8.x

v1.1.02025-07-28

  • Addedslider layout option with autoplay and configurable interval
  • Addedvideo count limiter per widget placement

Demo

Test the full module before you buy

Buy a licence later and keep your settings.

  • Your 30-day demo Test it on your own shop for 30 days from the first install.
  • Ready demo shop Explore a ready demo shop in your browser.
  • No registration No account, email or store domain needed.
Launch demo shop

By downloading, you accept the demo terms and privacy policy.

By opening this demo you accept the demo terms and the privacy policy.

Loading...
Back to top