Przewidywana data dostawy i odliczanie do wysyłki. Moduł Estimated Delivery Date & Shipping Countdown pokazuje zlokalizowaną przewidywaną datę dostawy i odliczanie na żywo do godziny granicznej (cutoff) wysyłki na karcie produktu, w koszyku i w kasie. Uwzględnia dni robocze i święta, z hierarchicznymi regułami dla produktu, kategorii, producenta, przewoźnika, strefy lub kraju. Nie wymaga API przewoźnika.

Moduł Estimated Delivery Date & Shipping Countdown pokazuje zlokalizowaną przewidywaną datę dostawy i odliczanie na żywo do godziny granicznej (cutoff) wysyłki na karcie produktu, w koszyku i w kasie. Uwzględnia dni robocze i święta, z hierarchicznymi regułami dla produktu, kategorii, producenta, przewoźnika, strefy lub kraju. Nie wymaga API przewoźnika.

1. Instalacja

  1. W panelu administracyjnym (back office) należy przejść do Modules → Module Manager → Upload a module i wybrać plik ZIP modułu.
  2. Po zakończeniu instalacji należy kliknąć Configure, aby otworzyć kreator konfiguracji.
Aktualizacje są automatyczne. Aktualizacje są w cenie. Domeny developerskie (.local, .test, localhost) są zawsze dozwolone. Gdy pojawia się nowa wersja, widać to wewnątrz modułu.

Jeśli zamiast potwierdzenia pojawi się komunikat „Upload failed”, PrestaShop mógł wyłączyć moduł bez powiadomienia: ustawienia i dane pozostają na swoim miejscu. Jak zaktualizować moduł i co zrobić, gdy pojawi się komunikat „Upload failed”.

2. Konfiguracja krok po kroku

Ekran Configure ma trzy panele: podgląd na żywo u góry, ustawienia główne i opcjonalne reguły nadpisania (override). Opisano je poniżej.

Live preview (global default)

Panel tylko do odczytu na górze strony. Oblicza przykładową datę dostawy na podstawie aktualnych ustawień globalnych, dzięki czemu przed zapisaniem czegokolwiek widać dokładnie, co przeczytają klienci. Pokazuje zdanie o dostawie, wiersz z godziną graniczną (cutoff) z zastępczym odliczaniem, a poniżej dzień wysyłki, okno dostawy i strefę czasową sklepu.

Podgląd na żywo wartości globalnych
Podgląd na żywo obliczony z wartości globalnych

Settings

Główny formularz, podzielony na sekcje. Tutaj ustawia się wartość globalną, obowiązującą wszędzie, chyba że reguła nadpisania stanowi inaczej.

  • Visibility: Enable the estimated delivery date (główny przełącznik całego modułu), Show on the product page, Show on the cart, Show at checkout.
  • Default lead & transit time (working days): Preparation lead time (dni robocze potrzebne na przygotowanie zamówienia przed wysyłką; 0 = wysyłka tego samego dnia roboczego), Transit time (min) i Transit time (max) (najszybszy i najwolniejszy transport przewoźnika w dniach roboczych) oraz Out-of-stock / pre-order extra delay (dodatkowe dni przygotowania dla zamówień oczekujących lub uzupełnienia zapasu; 0 wyłącza).
  • Calendar: Working days (zaznaczane są dni, w których sklep przygotowuje i wysyła zamówienia; weekendy i święta są pomijane), Holidays (jedna data w wierszu, YYYY-MM-DD dla daty jednorazowej lub MM-DD dla daty powtarzającej się co roku) oraz Daily cutoff time (HH:MM) (zamówienia złożone przed godziną graniczną mogą rozpocząć przygotowanie tego samego dnia roboczego; puste pole wyłącza godzinę graniczną i odliczanie).
  • Display: Show a date range (włączone = „od - do”, wyłączone = pojedyncza data końcowa), Show the live cutoff countdown, Delivery date format i Ship-day format (cutoff line) (wzorce PHP date(), lokalizowane dla każdego języka).
  • Texts per language: Single date text (używa {date}), Date range text (używa {from} i {to}) oraz Cutoff countdown text (używa {countdown} i {ship_day}). Puste pole oznacza tekst domyślny.
Ustawienia 1
Settings (1/3): Visibility oraz czasy przygotowania i transportu
Ustawienia 2
Settings (2/3): Calendar (dni robocze, święta, cutoff)
Ustawienia 3
Settings (3/3): formaty wyświetlania i teksty dla poszczególnych języków

Override rules opcjonalne

Reguły nadpisują wartość globalną dla określonego zakresu. Należy wybrać Scope, Target ID i wartości do zmiany. Gdy pasuje kilka reguł, wygrywa najbardziej szczegółowa (produkt > kategoria > producent > przewoźnik > kraj > strefa). Puste pole oznacza dziedziczenie wartości globalnej.

  • Scope: Product, Category, Manufacturer, Carrier, Zone lub Country.
  • Target ID: identyfikator wybranego produktu / kategorii / producenta / przewoźnika / strefy / kraju.
  • Lead, Transit min, Transit max: wartości nadpisujące (0-365 dni roboczych). Puste pola dziedziczą wartość globalną; reguła musi zmieniać co najmniej jedną wartość.
  • Active: włącza lub wyłącza regułę bez jej usuwania.
Override rules
Override rules: hierarchiczne dla produktu, kategorii, producenta, przewoźnika, strefy lub kraju

3. Sprawdzenie działania

  • Należy otworzyć kartę produktu i sprawdzić, czy wyświetlana jest przewidywana data dostawy oraz (jeśli włączone) odliczanie na żywo.
  • Należy ustawić Daily cutoff time na kilka minut do przodu, odświeżyć kartę produktu i obserwować upływ odliczania; po przekroczeniu godziny granicznej szacunek przesuwa się na kolejny dzień roboczy.
  • Należy dodać regułę nadpisania dla konkretnego produktu (np. dłuższy transport) i sprawdzić, czy szacunek zmienia się na tym produkcie, ale nie na pozostałych.
  • Należy sprawdzić panel Live preview na górze ekranu Configure: odzwierciedla zapisaną wartość globalną.

4. Często zadawane pytania

Czy potrzebne jest API przewoźnika?

Nie. Szacunek jest obliczany na podstawie czasów przygotowania i transportu ustawionych przez sprzedawcę, nie jest potrzebne żadne zewnętrzne API ani integracja z przewoźnikiem.

Czy weekendy i święta są uwzględniane?

Tak. Liczą się tylko wybrane dni robocze, a daty wskazane jako święta są pomijane, dzięki czemu szacunek nigdy nie wypada w dzień niepracujący.

Która reguła wygrywa, gdy pasuje kilka reguł?

Wygrywa najbardziej szczegółowy zakres: produkt > kategoria > producent > przewoźnik > kraj > strefa. Każde pole pozostawione puste w regule dziedziczy wartość globalną.

Czy trzeba modyfikować szablon?

Nie. Szacunek i odliczanie są dodawane przez standardowe hooki i działają z dowolnym szablonem.

5. Dlaczego data wpisana ręcznie prawie zawsze jest błędna

Najczęstsza forma daty dostawy w sklepie internetowym to stałe zdanie na karcie produktu, w rodzaju „dostawa w 2-4 dni robocze”, napisane raz i nigdy więcej nieruszane. Działa to do chwili, gdy zdarzy się któryś z poniższych przypadków, a wcześniej czy później zdarzają się wszystkie:

  • Weekend. Zamówienie złożone w piątek po południu nie wyjdzie w sobotę: jeśli obliczenie o tym nie wie, wyświetlana data jest błędna o dwa dni.
  • Święta. Sklep sprzedający w kilku krajach ma różne kalendarze świąt: 15 sierpnia zatrzymuje logistykę we Włoszech, nie w Niemczech. Jedna data dla wszystkich myli się w jednym kraju lub w drugim.
  • Godzina graniczna. Zamówienie złożone o 9 rano i zamówienie złożone o 23 tego samego dnia nie mają tej samej daty rozpoczęcia, jeśli magazyn zamyka dzienną wysyłkę o określonej godzinie.
  • Zamówienie przedpremierowe lub produkt chwilowo niedostępny. Produkt, który trzeba domówić przed wysyłką, ma inny czas przygotowania niż ten, który jest już na półce: użycie tej samej liczby dla obu zawsze zaniża jeden z przypadków.
  • Przewoźnik i strefa. Paczka jadąca na wyspę lub w strefę pozamiejską ma często inny czas transportu niż ta, która zostaje w mieście. Jedna liczba dla całego kraju to średnia, która myli się na obu krańcach.

Żaden z tych przypadków nie jest egzotyczny: to codzienność sklepu z więcej niż jednym produktem, więcej niż jednym przewoźnikiem lub więcej niż jednym krajem docelowym. Właśnie dlatego opisane wyżej ustawienia (czasy przygotowania i transportu, kalendarz, cutoff, opóźnienie zamówień przedpremierowych, reguły nadpisania) istnieją jako osobne pola, a nie jako jedno zdanie.

Lista kontrolna przed wpisaniem daty dostawy

  • Czy data zmienia się, jeśli zamówienie wpłynie w piątek wieczorem zamiast w poniedziałek rano?
  • Czy data uwzględnia święta kraju docelowego, a nie tylko kraju magazynu?
  • Czy istnieje godzina graniczna i czy jest rzeczywiście stosowana w obliczeniu, a nie tylko wpisana na stronie informacyjnej?
  • Czy produkt w przedsprzedaży pokazuje inny czas niż ten, który jest już dostępny?
  • Czy można ustawić inny czas dla wolniejszego przewoźnika lub dla dalszej strefy, bez zmiany liczby dla całego katalogu?

Widoczne odliczanie („zamów do 16:00:00, aby wysyłka nastąpiła dzisiaj”) czyni granicę godziny jawną, zamiast pozostawiać ją niejawną w ogólnym zdaniu, i ma też przydatny efekt uboczny: daje konkretny powód, by sfinalizować zamówienie od razu, zamiast odkładać je na później.

Ładowanie...
Powrót do góry