PS PrestaShop Początkujący

Tryb Konserwacji i Coming Soon: kompletny przewodnik

Instalacja i konfiguracja strony konserwacji / coming soon: odliczanie, dostęp testerów po IP i tokenie, soft launch per kraj, zbieranie e-maili i ustawienia SEO.

Zaktualizowano Wersja modułu 1.0.0

Tryb Konserwacji i Coming Soon (dfmaintenancepro) wyświetla zaprojektowaną stronę oczekiwania nieautoryzowanym odwiedzającym: odliczanie, zbieranie e-maili, dostęp testerów po IP lub tokenie i soft launch per kraj, bez włączania natywnego trybu konserwacji PrestaShop. Sklep pozostaje technicznie online: zaplecze, webhooki płatności i zadania zaplanowane działają normalnie.

Instalacja

  1. W panelu administracyjnym otwórz Moduły > Menedżer modułów > Zainstaluj moduł.
  2. Wgraj archiwum dfmaintenancepro.zip i kliknij Zainstaluj.
  3. Kliknij Konfiguruj, aby otworzyć panel modułu.

Instalacja tworzy tabelę dfmp_subscriber (zebrane e-maile), rejestruje ukrytą zakładkę „Subscribers” i automatycznie generuje unikalny token dostępu. Żaden override nie jest instalowany: moduł opiera się wyłącznie na hooku actionDispatcherBefore.

Po instalacji moduł jest domyślnie wyłączony: spokojnie skonfiguruj stronę, obejrzyj podgląd, a następnie włącz ją we właściwym momencie.

Panel informacyjny

U góry strony konfiguracji panel podsumowuje najważniejsze:

  • Status: zielona odznaka „ACTIVE”, gdy strona jest serwowana odwiedzającym, neutralna w przeciwnym razie.
  • URL testera: link https://twojsklep.com/?dfmp_token=XXXX do udostępnienia: zapisuje cookie dostępu w przeglądarce testera.
  • Wygeneruj token ponownie: natychmiast unieważnia wszystkie już przyznane cookies dostępu.
  • Podgląd: pokazuje stronę konserwacji nawet przy wyłączonym module (parametr dfmp_preview).
  • Zebrane e-maile: bezpośredni dostęp do listy zapisanych z ich liczbą.

Konfiguracja ogólna

  • Włącz stronę konserwacji: główny przełącznik. Po włączeniu wszyscy nieautoryzowani odwiedzający widzą stronę oczekiwania.
  • Tryb: „Coming soon (przed startem)” lub „Konserwacja (tymczasowa niedostępność)”. Ten wybór zmienia tylko odznakę na stronie; zachowanie SEO ustawia się w sekcji SEO.
  • Data startu: format RRRR-MM-DD GG:MM, strefa czasowa serwera. Zasila odliczanie i nagłówek Retry-After.
  • Pokaż odliczanie: licznik dni/godzin/minut/sekund ukrywa się automatycznie po osiągnięciu daty.

Dostęp testowy (IP i token)

Biała lista IP

Jeden wpis na linię (lub rozdzielone przecinkami). Akceptowane są trzy formaty:

  • Dokładne adresy IPv4 lub IPv6: 82.64.12.7
  • Zakresy CIDR: 192.168.1.0/24 lub 2001:db8::/32
  • Wildcardy IPv4: 192.168.1.*

Udostępnij URL widoczny w panelu informacyjnym. Przy otwarciu w przeglądarce testera zapisywane jest cookie podpisane HMAC SHA-256 na skonfigurowany czas (domyślnie 72 godziny): następnie porusza się po prawdziwym sklepie jak gdyby nigdy nic. Pole Czas ważności cookie dostępu kontroluje tę ważność.

Link wyciekł? Kliknij „Wygeneruj token ponownie”: token się zmienia, a wszystkie już zapisane cookies stają się natychmiast nieważne.

Webhooki płatności

Opcja Zezwól na kontrolery front modułów (włączona domyślnie) przepuszcza wszystkie żądania fc=module: IPN i callbacki płatności (PayPal, Stripe itd.) nigdy nie są blokowane, nawet w trakcie konserwacji.

Pracownicy zalogowani do zaplecza zawsze widzą prawdziwy sklep, bez żadnej konfiguracji: wystarczy sesja admina.

Soft launch per kraj

Ten tryb zamienia stronę oczekiwania w narzędzie stopniowego startu:

  1. Włącz Soft launch.
  2. Wpisz dozwolone kody krajów ISO 3166-1 alpha-2, rozdzielone przecinkami: PL,DE,CZ,SK.
  3. Wybierz zachowanie dla kraju nieokreślonego: pokaż stronę konserwacji (domyślnie, ostrożnie) lub wpuść.

Wykrywanie kraju przebiega w tej kolejności:

  1. Nagłówki geolokalizacji CDN: CF-IPCountry (Cloudflare), CloudFront-Viewer-Country (AWS), X-Vercel-IP-Country, X-Geoip-Country (nginx).
  2. Baza GeoLite2 PrestaShop, jeśli geolokalizacja jest skonfigurowana w Ustawienia międzynarodowe > Geolokalizacja.

Bez CDN i bazy GeoLite2 kraju nie da się określić: wszyscy odwiedzający podlegają wtedy regule „kraj nieokreślony”. Sprawdź konfigurację przed włączeniem soft launchu na produkcji.

Treść i design

  • Tytuł, podtytuł, wiadomość: tłumaczone język po języku przez flagi; wiadomość akceptuje prosty HTML.
  • Logo: bezwzględny URL obrazu (zalecane PNG/SVG). Gdy puste, wyświetla się nazwa sklepu jako tekst.
  • Kolory: tło, akcent (odliczanie, przycisk, odznaka) i tekst, przez selektory kolorów.
  • Media społecznościowe: Facebook, Instagram, X, LinkedIn, YouTube: uzupełnij tylko te do pokazania, ikony SVG są wbudowane.
  • Własny CSS: wstrzykiwany na końcu stylów, aby dostroić wszystko precyzyjnie.

Wygenerowana strona jest w 100% autonomiczna: CSS i JavaScript inline, żadnych zewnętrznych fontów ani skryptów, żadnych zewnętrznych żądań. Respektuje prefers-reduced-motion i dostosowuje się do mobile.

Używaj przycisku „Podgląd strony konserwacji” przy każdej zmianie: działa przy wyłączonym module, więc projektujesz bez ryzyka przed aktywacją.

Zbieranie e-maili

  • Włącz zbieranie: pokazuje formularz pod odliczaniem.
  • Placeholder, etykieta przycisku, komunikat sukcesu, informacja RODO: wszystko tłumaczone per język.

Formularz działa w AJAX z niewidocznym polem honeypot neutralizującym boty. Każdy zapis rejestruje e-mail, język, wykryty kraj, IP i datę, z unikalnością per adres i per sklep.

Lista zapisanych i eksport CSV

Z panelu informacyjnego otwórz Zebrane e-maile: lista filtruje się po kolumnach, sortuje, czyści masowo i eksportuje do CSV przyciskiem Export CSV, gotowa do importu do narzędzia e-mailingowego w dniu startu.

SEO

  • Kod HTTP 503 (zalecany): sygnalizuje Google tymczasową niedostępność. Nagłówek Retry-After jest liczony z czasu pozostałego do daty startu (ograniczony do 7 dni); bez przyszłej daty używana jest wartość pola Retry-After.
  • Kod HTTP 200: dla trwałej, indeksowalnej strony coming soon.

W każdym przypadku strona wysyła znacznik noindex, nofollow i nagłówki no-cache: katalog pozostaje zaindeksowany, strona oczekiwania nie.

Działanie techniczne

Przy każdym żądaniu front moduł ocenia autoryzacje w tej kolejności i przepuszcza przy pierwszym sukcesie:

  1. Pracownik zalogowany do zaplecza (cookie psAdmin).
  2. Poprawny parametr dfmp_token w URL (zapisuje cookie dostępu).
  3. Wciąż ważne podpisane cookie dostępu.
  4. IP obecne na białej liście.
  5. Dozwolony kraj, jeśli soft launch jest aktywny.

W przeciwnym razie renderowana jest strona konserwacji, a wykonanie zatrzymuje się przed kontrolerem front. Multisklep: konfiguracja i lista zapisanych są odrębne dla każdego sklepu.

Rozwiązywanie problemów

  • Wciąż widzę sklep mimo aktywnego modułu: prawdopodobnie jesteś zalogowany do zaplecza w tej samej przeglądarce albo cookie dostępu jest wciąż ważne. Przetestuj w trybie prywatnym.
  • Tester widzi stronę konserwacji mimo linku z tokenem: token mógł zostać wygenerowany ponownie po wysłaniu linku; prześlij ponownie URL z panelu informacyjnego.
  • Soft launch blokuje wszystkich: brak nagłówków CDN i bazy GeoLite2: kraj jest nieokreślony, a domyślna reguła blokuje. Przełącz „Kraj nieznany” na „Zezwól” albo skonfiguruj geolokalizację.
  • Odliczanie się nie pojawia: sprawdź, czy data startu ma format RRRR-MM-DD GG:MM i leży w przyszłości.
  • Deinstalacja: usuwa tabelę zapisanych: wyeksportuj CSV wcześniej, jeśli chcesz zachować adresy.
Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia