Wyprzedaż Błyskawiczna i Licznik Odliczający: kompletny przewodnik
Instalacja, konfiguracja i wykorzystanie wyprzedaży błyskawicznych: automatyczne planowanie rabatów przez ceny specyficzne, licznik zsynchronizowany z serwerem, baner sticky, targetowanie i tryb evergreen dla PrestaShop 8 i 9.
Prezentacja i wymagania
Wyprzedaż Błyskawiczna zamienia Twoje promocje w prawdziwe wyprzedaże flash o ograniczonym czasie trwania. Planujesz kampanię w oknie dat, a moduł automatycznie stosuje rabat przez natywne ceny specyficzne PrestaShop i wyświetla licznik odliczający zsynchronizowany z czasem serwera. Cena promocyjna obowiązuje więc wszędzie: na karcie produktu, w listingach, w koszyku i w e-mailach, bez żadnej modyfikacji Twojego motywu.
- Zgodny z PrestaShop 8.0 do 9.x, motywem Classic i motywami pochodnymi.
- PHP 7.4 do 8.3.
- Multisklep i wielojęzyczność (FR/EN/ES/DE/IT).
- Żaden CRON nie jest wymagany: włączanie i wyłączanie rabatu sterowane jest datami ceny specyficznej.
- Architektura zgodna z PrestaShop (ModuleAdminController, ObjectModel), autoloader PSR-4 bez zależności od Composera.
Rabat jest zapisywany w cenie specyficznej, której okno from / to odpowiada datom kampanii. PrestaShop sam ją aktywuje i wycofuje, co do sekundy.
Instalacja
Zainstaluj moduł jak każdy inny moduł PrestaShop:
- Pobierz archiwum
dfflashsale.zipze swojego konta klienta. - W zapleczu przejdź do Moduły > Menedżer modułów.
- Kliknij Załaduj moduł i wskaż archiwum.
- Po instalacji zarządzaj kampaniami z Katalog > Wyprzedaże błyskawiczne.
Przy instalacji moduł tworzy swoje tabele (kampanie, targetowania, mapowanie cen specyficznych), rejestruje hooki wyświetlania i dodaje zakładkę Wyprzedaże błyskawiczne pod Katalogiem.
Ustawienia ogólne modułu
Strona konfiguracji (Konfiguruj z poziomu menedżera modułów) grupuje ustawienia globalne, wspólne dla wszystkich kampanii:
- Synchronizuj licznik z serwerem: opiera zegar na czasie serwera (zalecane). Zobacz dedykowaną sekcję.
- Przesuń treść strony (push body): automatycznie dodaje margines, aby baner sticky nigdy nie zakrywał treści.
- Pokaż baner na mobile: włącza lub ukrywa baner na małych ekranach.
- Z-index banera: poziom warstwy banera, do zwiększenia, jeśli element Twojego motywu wyświetla się nad nim.
Tworzenie kampanii wyprzedaży błyskawicznej
W zakładce Katalog > Wyprzedaże błyskawiczne kliknij Dodaj kampanię. Formularz jest podzielony na panele.
Ogólne
- Nazwa: wewnętrzny identyfikator kampanii (dowolny).
- Aktywna: włącza lub wstrzymuje kampanię.
- Data rozpoczęcia / zakończenia: okno aktywności. Rabat i licznik opierają się na tych datach.
- Priorytet: jeśli kilka kampanii celuje w ten sam produkt, przy wyświetlaniu wygrywa ta o najwyższym priorytecie.
- Sklepy: w multisklepie wybierz sklepy, których dotyczy kampania.
Rabat
- Typ rabatu: Procent (np. -30%) lub Kwota stała (np. -15 €).
- Wartość: procent lub kwota rabatu.
- Waluta: dla rabatu kwotowego waluta odniesienia.
- Podatek: określa, czy kwota stała jest rozumiana brutto czy netto.
Rabat jest stosowany przez ceny specyficzne: łączy się z natywnymi regułami cenowymi PrestaShop według ich priorytetu i jest widoczny już w koszyku.
Targetowanie
Wybierz zakres kampanii:
- Cały katalog: rabat obejmuje wszystkie produkty.
- Kategorie: wybierz jedną lub kilka kategorii. Opcja Uwzględnij podkategorie rozszerza rabat na całe drzewo.
- Produkty: wyszukaj i wybierz konkretne produkty (wyszukiwanie po nazwie, indeksie lub identyfikatorze).
Wyświetlanie
- Baner z licznikiem odliczającym: wyświetla globalny pasek promocyjny.
- Pozycja banera: góra lub dół strony.
- Baner przyklejony (sticky): utrzymuje baner widoczny podczas przewijania.
- Pokaż na kartach produktów: dodaje ramkę z licznikiem pod ceną.
- Pokaż na stronie głównej: dodaje blok promocyjny na stronie głównej.
- Teaser przed startem: wyświetla licznik „start za…” przed datą rozpoczęcia.
- Po zakończeniu odliczania: ukryj element lub wyświetl komunikat końcowy.
Wygląd i teksty
Panel Wygląd pozwala ustawić kolor tła, kolor tekstu i kolor akcentu, a także link przycisku wezwania do działania (CTA). Panel Teksty grupuje tłumaczalne etykiety: tytuł i podtytuł banera, tekst przycisku i komunikat końcowy, wprowadzane dla każdego języka sklepu.
Jak działa planowanie
Gdy zapisujesz kampanię, moduł tworzy ceny specyficzne odpowiadające targetowaniu: globalną cenę specyficzną (produkt 0) dla „całego katalogu” albo cenę specyficzną per produkt dla targetowań po kategoriach i produktach. Okno ważności każdej ceny specyficznej jest dopasowane do dat rozpoczęcia i zakończenia kampanii.
PrestaShop sam włącza i wyłącza rabat, co do sekundy, bez zadania cyklicznego. Identyfikatory utworzonych cen specyficznych są zapamiętywane w tabeli mapowania, aby można je było czysto usunąć przy modyfikacji, usunięciu kampanii lub odinstalowaniu.
Przy targetowaniu po kategoriach z podkategoriami lista produktów jest wyznaczana przy zapisie przez przejście drzewa (nleft / nright). Pamiętaj o ponownym zapisaniu kampanii po reorganizacji kategorii.
Licznik zsynchronizowany z serwerem
Licznik odliczający opiera się na czasie serwera, nie odwiedzającego. Przy wyświetleniu moduł przekazuje znacznik czasu serwera i datę zakończenia; skrypt oblicza przesunięcie między czasem serwera a czasem lokalnym, a następnie odlicza lokalnie na podstawie tego przesunięcia.
Efekt: odwiedzający, który przestawi zegar swojego komputera do przodu lub do tyłu, nie zafałszuje licznika. Nie są potrzebne powtarzane wywołania sieciowe, odliczanie pozostaje płynne i dokładne dla wszystkich.
Możesz wyłączyć synchronizację z serwerem w ustawieniach ogólnych; licznik oprze się wtedy na lokalnym czasie przeglądarki.
Tryb evergreen
Tryb evergreen zamienia kampanię w indywidualny, wieczny licznik: każdy odwiedzający ma własny termin, uruchamiany przy pierwszej wizycie i oparty na czasie trwania w minutach, który definiujesz. Termin jest przechowywany lokalnie (localStorage), aby pozostać spójnym między stronami i wizytami.
W trybie evergreen licznik jest indywidualny dla każdego odwiedzającego i nie odpowiada rzeczywistemu oknu rabatu. Używaj go do spersonalizowanych komunikatów pilności, a nie do sygnalizowania wspólnego końca promocji.
Wielojęzyczność i multisklep
Wszystkie etykiety (tytuł, podtytuł, przycisk, komunikat końcowy) są tłumaczalne per język. W multisklepie każda kampania może być ograniczona do wybranych sklepów, a ceny specyficzne są tworzone per sklep. Ta sama kampania może więc celować w konkretny sklep bez wpływu na pozostałe.
FAQ i rozwiązywanie problemów
Rabat nie jest stosowany
Sprawdź, czy kampania jest aktywna, czy dzisiejsza data mieści się między datą rozpoczęcia a datą zakończenia i czy dotyczy bieżącego sklepu. Przy targetowaniu po kategoriach upewnij się, że kampania została ponownie zapisana po każdej reorganizacji drzewa.
Baner zakrywa moje menu lub treść
Włącz opcję Przesuń treść strony (push body) w ustawieniach ogólnych. Jeśli element Twojego motywu wyświetla się nad banerem, zwiększ wartość z-index.
Licznik pokazuje niespójny czas
Upewnij się, że czas Twojego serwera jest prawidłowy i że opcja synchronizacji z serwerem jest aktywna. Licznik opiera się na czasie serwera, niezależnie od zegara odwiedzającego.
Kilka kampanii celuje w ten sam produkt
Przy wyświetlaniu wygrywa kampania o najwyższym priorytecie. Po stronie rabatu obowiązuje logika priorytetów cen specyficznych PrestaShop.
Co się dzieje przy odinstalowaniu?
Odinstalowanie usuwa wszystkie ceny specyficzne utworzone przez moduł na podstawie jego tabeli mapowania, usuwa hooki i zakładkę oraz czyści tabele modułu. Twoje pierwotne ceny są w całości przywracane.