Accueil

Référence développeur · PrestaShop

Websource Slider pour PrestaShop — référence développeur

Hooks, emplacements, widget, méthodes PHP, bloc du builder, images et variantes, tables, cache, actions AJAX et variables CSS du module Websource Slider.

Version 1.1.0 · PrestaShop 1.7.7 à 9.x, PHP 7.1+, thème Websource Prestashop Theme (conseillé) · Mis à jour le 09/10/2026

Guide utilisateur

Cette extension existe aussi pour : WordPress

Vue d'ensemble

  • Module websourceslider, espace de noms Websource\Slider\ (PSR-4 dans src/), implémente WidgetInterface. Contrôleur d'administration AdminWebsourceSlider (Apparence > Slider) ; getContent() y redirige.
  • Image\ImageUploader, ImageVariants, UploadGuard ; Render\PictureBuilder, StyleBuilder, SliderCache ; Repository\SliderRepository ; Settings\Placements ; Import\ImageSliderImporter ; Builder\SliderBlock.

Hooks

HookRôle
displayHome, displayNavFullWidth, displayWrapperTop, displayWrapperBottom, displayFooterBefore, displayFooterRendu des sliders actifs placés à cet endroit, pour la page courante. Un hook libre (emplacement avancé) est greffé à l'enregistrement.
actionFrontControllerSetMediaFeuille de style et script du slider, seulement si un slider s'affiche.
actionWebsourceBuilderRegisterBlocksBloc « Slider » pour Websource Builder (type websource_slider).
actionObjectShopAddAfter, actionShopDataDuplication, actionObjectShopDeleteAfterMultiboutique : hooks, copie et nettoyage par boutique.
actionWebsourceThemeExport, actionWebsourceThemeImportParticipation au paquet de thème.

Emplacements (Settings\Placements)

PositionHookPages
homedisplayHomeaccueil
under_headerdisplayNavFullWidthau choix
page_topdisplayWrapperTopau choix
page_bottomdisplayWrapperBottomau choix
before_footerdisplayFooterBeforeau choix
footerdisplayFooterau choix
customhook libreau choix

Pages : all, home, category, product, brand, cms, search, login, account, cart, checkout, contact, notfound. 8 emplacements au plus par slider.

Widget et PHP

{widget name='websourceslider' slider='demo-a-accueil'}
{widget name='websourceslider' slider=3}

slider = identifiant texte (colonne identifier) ou numéro. Sans slider, le widget rend les sliders placés sur le hook d'appel. getWidgetVariables() renvoie un tableau vide.

echo WebsourceSlider::renderSliderById(3);

Gabarit views/templates/hook/slider.tpl, surchargeable dans themes/<thème>/modules/websourceslider/views/templates/hook/slider.tpl.

Balisage et CSS

Racine constatée : <section class="wss wss--slide wss--box wss--ratio wss--theme"> ; éléments .wss__frame, .wss__viewport, .wss__track, .wss__slide, .wss__overlay, .wss__content, .wss__title, .wss__subtitle.

Variables CSS : --wss-accent, --wss-accent-c, --wss-text, --wss-ov (voile), --wss-btn-bg, --wss-btn-text, --wss-btn-radius, --wss-radius, --wss-r, --wss-shadow, --wss-ratio, --wss-ratio-m (formats ordinateur et téléphone), --wss-h, --wss-hm (hauteurs fixes). Par défaut elles reprennent le thème (--color-brand-600, --radius-2xl, --wst-card-shadow). Arrondis prédéfinis : none 0, small .5rem, medium 1rem, large 1.75rem.

Images

  • Envoi : JPG, JPEG, PNG, WebP, AVIF ; 5 242 880 octets et 6000 px au plus (ImageUploader).
  • Variantes pour srcset : 480, 768, 1200, 1600, 1920 px, jusqu'à 2560 px, en AVIF / WebP si GD sait les écrire (ImageVariants).
  • <picture> avec source téléphone sous (max-width: 767.98px) (PictureBuilder::MOBILE_MEDIA).
  • Stockage sous des noms aléatoires dans uploads/, protégé par un .htaccess qui interdit l'exécution de code (UploadGuard).

Liens

Lien de diapositive ou de bouton : adresse, ou raccourci cms:<id>, page:<clé> résolu par Link dans la langue du visiteur.

Tables

  • {prefix}websourceslider_slider : id_slider, id_shop, identifier, name, active, slides_count, placements (JSON), content (version en ligne, JSON), draft (brouillon, JSON), date_add, date_upd.
  • {prefix}websourceslider_image : id_image, id_shop, filename, original_name, mime, width, height, size, variants (JSON), date_add.

Configuration et cache

  • WEBSOURCESLIDER_KEEP_DATA (globale) : 1 = conserver sliders et images à la désinstallation.
  • Cache de rendu : Render\SliderCache, durée 3 600 secondes, vidé à l'enregistrement.

Actions AJAX du contrôleur

create, draft (sauvegarde automatique), save (mise en ligne), toggle, duplicate, delete, upload, deleteImage, import (reprise de ps_imageslider : tables homeslider, homeslider_slides, homeslider_slides_lang), keepData. Appel ajax=1&action=<nom> avec le jeton du back-office ; réponses JSON.

Test fourni

php modules/websourceslider/tests/run.php.