Aankondigingsbalk en afteltimer (dfannouncebar)
De aankondigingsbalk installeren en configureren: berichtrotatie, afteltimer {countdown}, targeting op taal/land/groepen en planning.
Presentatie
De module dfannouncebar voegt een slimme aankondigingsbalk toe aan uw PrestaShop 8- of 9-winkel: meerdere roterende berichten in dezelfde balk, een live afteltimer, targeting op taal, land en klantgroep, planning op datum en een sluitknop die via een cookie wordt onthouden. Drie posities zijn beschikbaar: bovenaan de pagina, vast bovenaan (sticky) en vast onderaan.
Installatie
- Open in de backoffice Modules → Modulebeheer → Een module uploaden.
- Verstuur het bestand
dfannouncebar.zipen klik op Installeren. - Klik op Configureren om de pagina van de module te openen.
Bij de installatie maakt de module een inactieve voorbeeldbalk aan met een meertalig bericht (code HELLO10 en afteltimer op D+7): activeer haar om direct het resultaat te zien, en pas haar daarna aan of verwijder haar.
Geen afhankelijkheden: geen Composer, geen jQuery. De JS- en CSS-bestanden van de module worden in de frontoffice alleen geladen als minstens één balk actief is.
Algemene configuratie
De configuratiepagina bevat één globale instelling: de koppelingshook van de positie “bovenaan de pagina”.
- displayBanner (standaard): standaardpositie boven de header op het Classic-thema.
- displayTop: noodoplossing als uw thema displayBanner niet declareert.
Een interne bewaking voorkomt dubbele weergave als uw thema beide hooks uitvoert. De vaste posities (vast bovenaan en vast onderaan) zijn niet afhankelijk van deze instelling.
Een balk aanmaken
Klik op de configuratiepagina op Balken beheren. Elke balk heeft:
- Positie: bovenaan de pagina, vast bovenaan (volgt het scrollen) of vast onderaan. De module compenseert automatisch de padding van de pagina voor de vaste posities.
- Prioriteit: als meerdere balken dezelfde positie targeten, wordt alleen die met de laagste prioriteit getoond.
- Kleuren: achtergrond en tekst, toegepast via CSS-variabelen.
- Rotatie: interval in seconden tussen twee berichten. De rotatie pauzeert bij hover.
- Sluiten: optionele sluitknop; de levensduur van de cookie (in uren) bepaalt wanneer de balk opnieuw verschijnt.
- Planning: begindatum en einddatum in het formaat JJJJ-MM-DD, automatisch aangevuld tot 00:00:00 en 23:59:59.
- Winkel: in multistore kan een balk globaal zijn of beperkt tot één winkel.
Berichten en afteltimer
Vanuit de balkenlijst opent de actie Berichten de berichten van de balk. Elk bericht is meertalig en bevat:
- Tekst: de getoonde inhoud. Voeg de placeholder
{countdown}in op de plek waar de timer moet verschijnen. - Vervaldatum: het doel van de afteltimer, getoond in het formaat
Xd HH:MM:SSen elke seconde bijgewerkt (het dagenlabel is vertaalbaar). - Verbergen na afloop: het bericht verdwijnt automatisch bij het verstrijken, zowel aan browser- als aan serverzijde (er wordt geen dode HTML geserveerd).
- Actieknop: optioneel label en URL, getoond in pilstijl.
- Volgorde: positie van het bericht in de rotatie.
Voorbeeld: “Zomerkoopjes: -20% met de code HELLO10 — eindigt over {countdown}”. Als alle berichten van een balk verlopen zijn, trekt de balk zich vanzelf terug.
Targeting
Elke balk kan worden beperkt op:
- Talen: de balk wordt alleen getoond voor de geselecteerde talen.
- Landen: gebaseerd op het land van de PrestaShop-context; de precisie neemt toe als de IP-geolocatie is ingeschakeld in Internationale instellingen → Lokalisatie.
- Klantgroepen: bezoekers, gasten, klanten of elke aangepaste groep (VIP, B2B…).
Een leeg gelaten veld betekent “iedereen”. De drie criteria stapelen zich op.
Probleemoplossing
- De balk verschijnt niet bovenaan de pagina: uw thema declareert waarschijnlijk displayBanner niet; zet de koppelingshook op displayTop in de configuratie.
- De balk verschijnt helemaal niet: controleer of ze actief is, of de planning de datum van vandaag dekt, of de targeting overeenkomt met uw testprofiel, en of geen balk met lagere prioriteit dezelfde positie inneemt. Denk ook aan de sluitcookie: open een incognitovenster.
- De afteltimer verschijnt niet: controleer of het bericht daadwerkelijk
{countdown}bevat en of een toekomstige vervaldatum is ingevuld. - Er verschijnen twee balken bovenaan: de koppelingshook is mogelijk gewijzigd terwijl een paginacache de oude versie serveerde; leeg de PrestaShop-cache.