Fonctionnalités

  • Barre d’annonces rendue par le serveur dans page_top ou page_bottom : jusqu’à 5 messages qui défilent, se mettent en pause au survol, au focus ou par un bouton, et se ferment
  • Compte à rebours par message vers une fin fixe commune à tous ; à zéro le message disparaît, et sans JavaScript la date de fin reste affichée
  • Jusqu’à 3 pop-ups en boîtes de dialogue modales natives : image en fichier géré, code promo avec bouton de copie, Échap et retour du focus
  • Ouverture après un délai, un défilement ou à l’intention de sortie ; à chaque page, une fois par visite ou tous les N jours, mémorisé dans le navigateur seulement
  • Jusqu’à 6 boutons flottants avec nom accessible : tel:, discussion WhatsApp (wa.me avec un premier message par langue), mailto:, liens Instagram, Facebook, TikTok, YouTube, X, LinkedIn, Pinterest ou Telegram avec nos propres icônes génériques, et retour en haut
  • Par élément : dates, types de page (accueil, produit, terme de taxonomie ou vue produits, panier, commande), appareil et couleurs avec alerte de contraste WCAG
  • Un texte par langue du site ; tags de cache et max-age jusqu’au prochain changement programmé, avec rafraîchissement du cache des pages anonymes au début ou à la fin d’un élément

Seuil de livraison offerte, soldes qui finissent dimanche, fermeture pour congés, code de bienvenue : les messages de la boutique changent chaque semaine, et les coder en dur dans un template Twig ou un bloc à chaque campagne prend du temps. Ce module rassemble tout dans un formulaire pour les administrateurs de la boutique, avec dates, types de page et textes dans chaque langue du site, et une sortie qui ne joue pas de tours au cache de rendu.

Comment il s’intègre à Drupal Commerce

Versions
Drupal 11.3 avec Commerce 3.x et PHP 8.3. Testé avec Olivero ; tout thème dont le html.html.twig affiche page_top et page_bottom convient.
Administration
Commerce › Configuration › Boutique › Barre promo, pop-ups et boutons, un formulaire de configuration à onglets verticaux et emplacements fixes (5 messages, 3 pop-ups, 6 boutons), protégé par sa propre permission pour que les rôles marketing le modifient sans droits d’administration du site. Les réglages forment un seul objet de configuration exportable, avec schéma.
Front-office
La barre passe par hook_page_top (ou hook_page_bottom quand elle est en bas), les pop-ups et les boutons par hook_page_bottom ; la bibliothèque n’est jointe que s’il y a quelque chose à afficher.
Cache
Le HTML est le même pour tous les visiteurs et porte le tag de cache de la configuration, les contextes de route et de langue et un max-age jusqu’au prochain début ou fin. Un petit middleware HTTP rafraîchit à ce moment le cache interne des pages, qui sinon ignore le max-age du rendu.
Accessibilité
La rotation peut être mise en pause (WCAG 2.2.2), les pop-ups sont de vrais éléments <dialog> qui se ferment avec Échap et rendent le focus, les boutons ont un nom pour les lecteurs d’écran et le formulaire signale les contrastes faibles.

Installation

  1. Étape 1

    Récupérez le zip dans Mon compte › Téléchargements sur ecom-addons.com et décompressez-le dans modules/custom/.

  2. Étape 2

    Activez Promo Bar, Popups & Floating Buttons dans Extension (ou drush en ecom_addons_promo_bar).

  3. Étape 3

    Accordez Administrer la barre promo, les pop-ups et les boutons flottants aux rôles qui gèrent les campagnes, puis activez le message d’exemple dans Commerce › Configuration › Boutique.

Téléchargez le guide pas à pas (PDF)

Questions fréquentes

Est-ce compatible avec Internal Page Cache et Dynamic Page Cache ?

Oui. Rien dans le HTML ne dépend du visiteur : appareil, fréquence des pop-ups et marque « fermée » sont gérés dans le navigateur, et les pages sont rafraîchies à l’enregistrement ou quand un élément programmé commence ou se termine.

Chaque langue peut-elle avoir son texte ?

Oui, un champ par langue installée ; une traduction manquante reprend la langue par défaut.

Ajoute-t-il des cookies ou des appels externes ?

Non. Le navigateur retient seulement en local qu’un visiteur a fermé la barre ou vu un pop-up. Le code promo est affiché et copié ; la promotion elle-même se crée dans Commerce.

Puis-je l’exclure du panier et de la commande ?

Ils sont exclus par défaut pour chaque élément ; cochez-les seulement si vous voulez un message à cet endroit.

Le bouton WhatsApp prend-il des commandes ?

Non. Il ouvre une discussion WhatsApp avec votre numéro et, si vous le souhaitez, un premier message dans la langue du visiteur ; la commande via WhatsApp est un autre addon.

Historique des versions

  1. Chargement…

Avis

Chargement…