TikTok Feed Integration: setup and help

Quick start

  1. Upload and install the mprtiktokintegration ZIP in Modules > Module Manager.
  2. Click Configure. In TikTok Connection, leave Enable Module set to Yes.
  3. Enter at least one public TikTok Video URLs value, one full video URL per line. Leave publishing credentials empty for feed-only use.
  4. Optionally enter TikTok Username without @ for the profile and follow links.
  5. Select Display Hook displayHome and Layout Mode grid. Leave Enable automatic submission off.
  6. Click Save on the feed form. Open the storefront where the selected hook is rendered.
  7. Check the thumbnail cards and click one to confirm it opens the correct TikTok video.

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.

TikTok Connection

Setting Default What you do
Enable Module Yes Turn the standalone feed on or off.
TikTok Access Token Empty Used by the optional publishing code. Leave empty for public video feed display.
TikTok Client Key Empty Stored for optional publishing setup. Leave empty for feed display.
TikTok Username Empty Enter without @. This controls profile/follow links and does not import your account’s videos.
Video URLs Empty Enter full public TikTok video URLs, one per line. The code filters lines containing tiktok.com and requests their oEmbed data.

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 Empty Set the feed heading. Leave empty to hide it.
Show Follow Button Yes Show a profile link below the feed when the username is set.
Follow Button Text Follow Set the text before the username. It is joined directly to the username.
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 and appearance

Setting Default What you do
Layout Mode grid Choose grid, slider, or list. In this template, list renders the same grid markup as grid.
Number of Posts 6 Set a positive count. The feed is limited to this many items after retrieval.
Columns 3 Choose 2-6 desktop grid columns.
Mobile Columns 1 Choose 1 or 2 grid columns below 768px.
Gap Between Posts (px) 16 Set grid spacing.
Border Radius (px) 8 Set card corner rounding.
Hover Effect elevate Choose elevate, glow, border, or none. These choices need custom theme CSS to produce their named effects; the bundled styles provide overlay, zoom and fade effects instead.

The grid uses three columns at intermediate widths up to 991px and the mobile setting below 768px.

Column and spacing settings apply to the grid. The carousel uses its built-in column and spacing defaults. Check the carousel at your storefront widths; use the grid when you need the configured column counts.

Video Info

Setting Default What you do
Show Caption Yes Show the caption and available author name when the video has a caption.
Show View Count Yes Show the view icon. Numeric view counts are not displayed.
Show Likes Yes Show the like icon area. This template does not receive numeric like counts.

Slider & Performance

Setting Default What you do
Lazy Load Images 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 5000 Set the carousel interval in milliseconds. Choices are 2000, 3000, 5000, 8000, and 10000.
Cache Duration 3600 Reuse retrieved data for this many seconds. Choices are 1800, 3600, 7200, 21600, 43200, and 86400.

Feed behavior

You do not need a token or a business account for the public URL feed path. You choose each video manually. Entering a username does not import future account posts. The server calls https://www.tiktok.com/oembed?url=... for each accepted URL and skips failed responses. The storefront displays a thumbnail, play badge, optional caption/author, and optional follow link. Clicking opens the video on TikTok in a new tab. The module does not embed an in-page TikTok player.

Cache and refresh

The module stores retrieved items in:

modules/mprtiktokintegration/mprtiktok_feed_cache.json

The web-server process must be able to write this file in the module directory. Keep the normal owner/group permissions for your hosting setup. You do not need a cron task for feed display. A storefront request fetches data after the cache expires. Saving the main feed form clears the cache. The file is shared across this module’s shop contexts, rather than having a separate file per shop.

Saving the feed form clears the cache. The renderer has a case-sensitive cache refresh action. The spelling refreshMprTiktokCache is not accepted; the required parameter is refreshMPRTiktokCache. The supplied main form has no visible cache-clear button. Use Save, or have your administrator remove only the cache file.

Only non-empty fetch results are saved. An empty or failed fetch hides the feed and can be retried on later storefront requests. If items look stale, clear the cache after checking the source. API counts and relative dates reflect the cached response, not a live browser subscription.

Automatic TikTok submission

The separate Automatic TikTok submission form contains:

Setting Default What you do
Enable automatic submission No Submit eligible published blog posts for asynchronous processing. This does not mean the post is published.
Caption Template {title}\n\n{excerpt}\n\nRead more: {url} Use {title}, {excerpt}, {url}, and {shop_name}. The publisher limits the caption to 2200 characters.

The TikTok submissions panel requires MPR Blog Revolution. It offers Submit to TikTok and Check status. The state can be Not submitted, processing, Confirmation required in TikTok, Published, Blocked, or Failed. A returned publish ID means TikTok accepted a submission for processing. Use Check status before retrying. If the account requires confirmation, complete it in TikTok.

Feed display and publication are separate. The publisher sends one video URL to TikTok’s Content Posting API with PULL_FROM_URL and SELF_ONLY privacy. Its connection check currently requires a non-empty access token; the configuration map also includes the client key. The module does not provide an OAuth authorization flow here.

Blog submissions use the post’s featured image from img/mprblogrevolution/posts/, but TikTok publishing requires a video. An ordinary blog image cannot be published as a TikTok video. Keep automatic submission off until your installation supplies suitable video media.

Saving the main feed form processes the separate auto-submission keys too and can reset the switch/caption. Configure the feed first, then save the separate submission form and recheck it after future feed saves. The outbound-write policy can block development/staging or unresolved shop hosts. The panel reports that reason. The Social Revolution TikTok takeover flag also suppresses standalone publishing.

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.

Add public TikTok videos, one per line:

https://www.tiktok.com/@yourbrand/video/1234567890123456789
https://www.tiktok.com/@yourbrand/video/9876543210987654321
https://www.tiktok.com/@yourbrand/video/1122334455667788990

Homepage grid setup:

ENABLED=1
DISPLAY_HOOK=displayHome
TITLE=Watch us on TikTok
LAYOUT=grid
POST_COUNT=6
COLUMNS=3
MOBILE_COLUMNS=1
GAP=16
BORDER_RADIUS=8
SHOW_FOLLOW_BTN=1
FOLLOW_TEXT=Follow

Compact slider setup above the footer:

DISPLAY_HOOK=displayFooterBefore
LAYOUT=slider
POST_COUNT=6
COLUMNS=3
MOBILE_COLUMNS=1
AUTO_SCROLL=1
SCROLL_SPEED=5000
LAZY_LOAD=1
CACHE_DURATION=3600

Render the selected hook manually in a theme template when your theme supports Smarty hooks:

{hook h='displayHome' mod='mprtiktokintegration'}

Use the feed CSS classes in your theme stylesheet or custom CSS:

.mprfeed-tiktok .mprfeed-title {
  font-size: 24px;
}

.mprfeed-tiktok .mprfeed-grid {
  --mprfeed-gap: 20px;
}

.mprfeed-tiktok .mprfeed-follow-btn {
  border-radius: 4px;
}

Optional auto-publish caption template placeholders:

{title}

{excerpt}

Read more: {url}

Available placeholders for the publishing template:

{title}
{excerpt}
{url}
{shop_name}

For a carousel, verify the actual sizing limitation described above. 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 TIKTOK_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. The feed enable switch does not disable publishing. Also turn off the separate publishing switch if you use it. Save the publishing form after the main feed form. Uninstall through the module manager to remove this module’s configuration, local cache, and admin menu entries. Shared mpr_social_publish and mpr_social_queue tables are marked shared and are retained on uninstall. Uninstall does not delete posts already sent to the platform.

Questions

1

Does lazy loading wait for consent before loading TikTok thumbnails?

Lazy Load Images uses viewport proximity where supported, with immediate loading as the fallback. Neither path checks consent. The feed displays thumbnails that link to TikTok rather than an in-page video player. If you need to hold thumbnail requests, verify that your consent tooling controls them.

Known Issues

4

TikTok publications remain pending after confirmation

ResolvedUpdated:
Fixed in: 1.0.17
Confirmed TikTok uploads could remain marked as submitted, and the submit button could show the wrong available action.

Module fails to load on PHP 7.1

ResolvedUpdated:
Fixed in: 1.0.17
The module could fail to load on PHP 7.1 because its installation requirements were generated incorrectly.

Damaged or untranslated administration text

ResolvedUpdated:
Fixed in: 1.0.17
Some administration labels displayed damaged text or stayed in the source language despite available translations.

Setup warning stays stale after saving

ResolvedUpdated:
Fixed in: 1.0.17
The setup status banner could continue to show the old settings after a successful save.

Feature Requests

5

Implemented

TikTok publishing

Implemented
Publish blog posts to TikTok from the back office or enable automatic publishing.

Updates from the back office

Implemented
Check for and install module updates from the back office.

Multilingual administration

Implemented
Use the module administration in French, German, Spanish, Italian and Polish.

Setup readiness checks

Implemented
See which required settings are missing before enabling the integration.

TikTok publication status tracking

Implemented
Check whether a submitted TikTok publication is processing, published, awaiting confirmation or failed.

Changelog

v1.0.122026-09-17

  • 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-03

  • AddedPS 9 / Hummingbird theme compatibility
  • Addedlightbox video playback with keyboard navigation
  • Improvedslider layout — configurable slides-per-view per breakpoint
  • Fixedvideo thumbnails not loading for TikTok accounts with private avatars

v1.1.02025-07-22

  • Addedgrid and slider layout selector in back office
  • Addedvideo count limiter — show up to 20 latest videos

v1.0.02025-07-20

  • Initialrelease: TikTok video feed display for PrestaShop
  • InitialEmbeds TikTok channel or hashtag feed via oEmbed API
  • InitialBack-office configuration for channel handle and layout type
  • InitialCompatible with PS 1.7.x and PS 8.x

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