# Centrum Powiadomień: kompletny przewodnik

> Prezentacja Moduł Centrum Powiadomień (dfnotificationcenter) dodaje dzwonek powiadomień w nagłówku Twojego sklepu, tuż obok koszyka i „Mojego konta". Czerwona plakietka sygnalizuje nieprzeczytane powiadomienia. Twoje nowe produkty pojawiają się tam automatycznie,…

- Strona: <https://www.datafirefly.com/pl/documentation/dfnotificationcenter/>
- Język: pl
- Zaktualizowano: 2026-08-01
- Inne języki: [fr](https://www.datafirefly.com/documentation/dfnotificationcenter/index.md), [en](https://www.datafirefly.com/en/documentation/dfnotificationcenter/index.md), [es](https://www.datafirefly.com/es/documentation/dfnotificationcenter/index.md), [de](https://www.datafirefly.com/de/documentation/dfnotificationcenter/index.md), [it](https://www.datafirefly.com/it/documentation/dfnotificationcenter/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfnotificationcenter/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfnotificationcenter/index.md)
- Indeks: <https://www.datafirefly.com/pl/documentation/llms.txt>

## Prezentacja

Moduł **Centrum Powiadomień** (`dfnotificationcenter`) dodaje **dzwonek powiadomień** w nagłówku Twojego sklepu, tuż obok koszyka i „Mojego konta". **Czerwona plakietka** sygnalizuje nieprzeczytane powiadomienia. Twoje **nowe produkty** pojawiają się tam automatycznie, a Ty możesz wypychać do niego **kody promocyjne**, które klient kopiuje jednym kliknięciem. Całość jest wielojęzyczna, multisklepowa i zgodna z PrestaShop 8 i 9.

Dzwonek wykorzystuje odruch, który Twoi odwiedzający mają już z mediów społecznościowych: czerwona kropka przyciąga wzrok i zachęca do kliknięcia, bez natrętnego pop-upu i banera przeszkadzającego w nawigacji.

## Zgodność

- PrestaShop 8.0 do 9.x
- Pojedynczy sklep i multisklep
- PHP 7.2 do 8.x
- Motyw Classic i motywy niestandardowe
- Interfejs dostarczony po francusku, angielsku, hiszpańsku, niemiecku i włosku
- Brak zależności (ani Composer, ani framework)

## Instalacja

1. W zapleczu otwórz **Moduły > Menedżer modułów**.
2. Kliknij **Zainstaluj moduł** i wybierz plik `dfnotificationcenter.zip`.
3. Po instalacji kliknij **Konfiguruj**.

Podczas instalacji moduł tworzy swoje trzy tabele (powiadomienia, tłumaczenia, stan odczytu), rejestruje hooki (dzwonek w nagłówku, zasoby front, zapis produktu, tworzenie kuponu rabatowego) i dodaje zakładkę zaplecza **Notification Center** do zarządzania powiadomieniami.

## Ustawienia globalne

Ze strony **Konfiguruj** modułu ustawiasz ogólne zachowanie:

- **Automatyczne nowe produkty**: tworzy powiadomienie przy każdym zapisie produktu.
- **Tylko aktywne produkty**: generuje powiadomienie tylko dla produktów aktywnych i widocznych.
- **Automatyczna promocja przy kuponie rabatowym**: automatycznie tworzy powiadomienie promocyjne, gdy tylko powstaje kupon rabatowy z kodem.
- **Czas życia powiadomień produktowych (dni)**: automatyczne wygasanie po N dniach. `0` = nigdy.
- **Interwał odświeżania (sekundy)**: aktualizacja plakietki w tle. `0` = wyłączone.
- **Maksymalna liczba elementów w panelu**: liczba powiadomień wyświetlanych w dzwonku.
- **Kolor plakietki** i **Kolor dzwonka** (puste = kolor motywu).
- **Dźwięk** i **Animacja** dzwonka przy nadejściu nowego powiadomienia.

## Zarządzanie powiadomieniami

Zakładka **Notification Center** (dostępna także przez przycisk „Otwórz Notification Center" na stronie konfiguracji) wyświetla powiadomienia z ich typem, priorytetem, liczbą wyświetleń i kliknięć oraz stanem aktywności. Kliknij **Dodaj powiadomienie**, aby utworzyć nowe.

### Pola powiadomienia

- **Typ**: Nowy produkt, Kod promocyjny, News lub Informacja. Każdy typ ma swoją ikonę i kolor po stronie klienta.
- **Tytuł** (wielojęzyczny, wymagany) i **Wiadomość** (wielojęzyczna, edytor tekstu).
- **Etykieta przycisku** (wielojęzyczna) i **Link** (docelowy adres URL).
- **ID produktu**: dla typu Nowy produkt. Obraz i link są wtedy rozwiązywane automatycznie.
- **Kod promocyjny**: dla typu Kod promocyjny. Wyświetlany po stronie klienta z przyciskiem **Kopiuj**.
- **Obraz**: opcjonalna grafika (ignorowana dla typu produktowego, który używa zdjęcia okładkowego).
- **Grupa docelowa**: „Wszyscy klienci" lub konkretna grupa.
- **Priorytet**: im wyższa wartość, tym wyżej powiadomienie się pojawia.
- **Data rozpoczęcia** i **Data zakończenia**: pozostaw puste dla „widoczne od razu" i „nigdy nie wygasa".
- **Aktywne**: przełącznik aktywacji.

Planowanie i targetowanie się łączą: możesz na przykład zaplanować powiadomienie promocyjne widoczne tylko dla grupy „Stali klienci", od 1 do 15 dnia miesiąca, z wysokim priorytetem, aby pojawiało się na górze.

## Automatyczne nowe produkty

Gdy opcja jest włączona, moduł nasłuchuje zapisu produktów (hook `actionProductSave`) i tworzy powiadomienie typu produktowego z nazwą, zdjęciem okładkowym i linkiem do karty. Ten sam produkt jest notyfikowany tylko raz (deduplikacja po identyfikatorze produktu).

Obraz i link powiadomienia produktowego są **przeliczane przy wyświetlaniu**. Nawet jeśli później zmodyfikujesz produkt lub zmienisz jego zdjęcie, powiadomienie pozostaje poprawne. Jeśli produkt stanie się nieaktywny lub zostanie usunięty, powiadomienie po prostu przestaje się pojawiać.

## Kody promocyjne

Utwórz powiadomienie typu **Kod promocyjny**, wpisz kod swojego kuponu rabatowego, a wyświetli się po stronie klienta w plakietce z przyciskiem **Kopiuj**. Jedno kliknięcie, kod jest w schowku, klient wraca do koszyka, aby go zastosować.

Jeśli opcja **Automatyczna promocja przy kuponie rabatowym** jest włączona, powiadomienie promocyjne jest tworzone automatycznie przy każdym utworzeniu kuponu rabatowego z kodem (hook `actionObjectCartRuleAddAfter`), z przejęciem jego daty końca ważności.

## Działanie po stronie klienta

Dzwonek wyświetla się w nagłówku przez hook `displayNav2`, obok koszyka i „Mojego konta". Czerwona plakietka wskazuje liczbę nieprzeczytanych powiadomień (powyżej dziewięciu pokazuje `9+`). Po kliknięciu rozwijany panel wyświetla powiadomienia, najpierw te o najwyższym priorytecie i najnowsze.

- **Oznaczanie jako przeczytane**: przycisk „Oznacz wszystko jako przeczytane" i automatyczny odczyt przy kliknięciu powiadomienia.
- **Przycisk Kopiuj** na kodach promocyjnych.
- **Względny znacznik czasu** („2 godz. temu", „wczoraj"…).
- **Responsywność**: panel wyświetla się na dole ekranu (bottom-sheet) na mobile.
- **Dostępność**: atrybuty ARIA i zamykanie klawiaturą (klawisz Esc).

### Stan przeczytane / nieprzeczytane

Dla **zalogowanych klientów** stan przeczytane / nieprzeczytane jest przechowywany po stronie serwera, a więc współdzielony między ich urządzeniami. Dla **niezalogowanych odwiedzających** jest zapamiętywany w przeglądarce przez `localStorage`.

## Statystyki (KPI)

Każde powiadomienie zlicza **wyświetlenia** i **kliknięcia**, widoczne na liście w zapleczu. Dzięki temu od razu widzisz, które powiadomienia generują najwięcej zaangażowania.

## Zgodność z PrestaShop 9

Moduł jest zaprojektowany i przetestowany od PrestaShop 8.0 do 9.x:

- kontroler zaplecza używa `ModuleAdminController`, zgodnego z 8 i 9;
- kontrolery unikają metod usuniętych w PrestaShop 9;
- kontroler AJAX front zwraca bezpośrednio JSON przez metody `ajaxProcess`, bez nadpisywania niezgodnych sygnatur;
- brak jakiegokolwiek override rdzenia PrestaShop.

## FAQ i rozwiązywanie problemów

### Dzwonek nie wyświetla się w nagłówku

Dzwonek jest podpięty do hooka `displayNav2` motywu Classic, tam gdzie znajdują się koszyk i konto klienta. Na motywie niestandardowym, który nie udostępnia tego miejsca, podepnij moduł do hooka używanego przez Twój nagłówek z poziomu **Moduły > Menedżer modułów** albo skontaktuj się z nami.

### Nowe produkty się nie pojawiają

Sprawdź, czy opcja **Automatyczne nowe produkty** jest włączona. Jeśli zaznaczone jest **Tylko aktywne produkty**, produkt musi być aktywny i widoczny. Produkt już notyfikowany nie jest notyfikowany po raz drugi.

### Plakietka nie aktualizuje się dla odwiedzającego

Dla niezalogowanych odwiedzających stan odczytu jest przechowywany w przeglądarce. Wyczyszczenie cache lub danych witryny resetuje ten stan. Aby śledzenie było współdzielone między urządzeniami, klient musi być zalogowany.

### Przycisk Kopiuj nie działa

Kopiowanie używa API schowka przeglądarki, dostępnego w HTTPS. Upewnij się, że Twój sklep jest serwowany przez HTTPS; przewidziana jest kopia zapasowa, ale HTTPS gwarantuje najlepsze działanie.

### Jak przetłumaczyć powiadomienia?

Tytuł, wiadomość i etykieta przycisku to pola wielojęzyczne: wybierz każdy język w formularzu powiadomienia. Etykiety interfejsu tłumaczy się przez **Zaawansowane parametry > Tłumaczenia > Tłumaczenia zainstalowanych modułów**, wybierając `dfnotificationcenter`.

### Czy jest zgodny z PrestaShop 9?

Tak. Moduł jest zaprojektowany i przetestowany od PrestaShop 8.0 do 9.x, w pojedynczym sklepie i w multisklepie.

## Odinstalowanie

Odinstalowanie usuwa zakładkę zaplecza, ustawienia i trzy tabele modułu (powiadomienia, tłumaczenia, stan odczytu). Aby zachować powiadomienia, wyłącz moduł bez odinstalowywania.
