# Smart Content: dokumentacja

> Kompletna dokumentacja modułu DataFirefly Smart Content: instalacja, ustawienia AI, tworzenie segmentów i kampanii, testy A/B, statystyki, RODO i rozwiązywanie problemów.

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

## Prezentacja

DataFirefly Smart Content personalizuje treści w Twoim sklepie PrestaShop według profilu, zachowania, koszyka i kontekstu każdego odwiedzającego. Zasada jest prosta: definiujesz **segmenty** (grupy odbiorców), a następnie **kampanie**, które łączą segment z treścią HTML wyświetlaną w wybranej strefie motywu. Na każdej stronie moduł ocenia odwiedzającego i pokazuje treść tej kampanii o najwyższym priorytecie, której segment pasuje.

Moduł obejmuje cały cykl: segmentację behawioralną, publikację wielostrefową, testy A/B, statystyki konwersji oraz dwóch asystentów AI (generowanie treści i propozycje segmentów).

Zgodny z PrestaShop 1.7.6 do 8.x i 9.x, obsługuje multisklep i wielojęzyczność. Żadne dane osobowe nie są przechowywane.

## Instalacja

1. Umieść katalog `dfsmartcontent` w folderze `/modules/` swojego sklepu lub zainstaluj plik ZIP przez _Moduły > Menedżer modułów > Wgraj moduł_.
2. Kliknij **Instaluj**. Tabele i zakładki administracyjne tworzone są automatycznie.
3. Pojawia się nowe menu **Smart Content** z czterema podsekcjami: _Pulpit_, _Kampanie_, _Segmenty_ i _Ustawienia_.

## Konfiguracja ustawień

Przejdź do **Smart Content > Ustawienia**. Dostępne są tam dwie grupy parametrów.

### Parametry AI

- **Adres endpointu AI**: endpoint uzupełniania rozmowy (zgodny z OpenAI i Mistral). Wartość domyślna: `https://api.mistral.ai/v1/chat/completions`.
- **Model AI**: na przykład `mistral-large-latest` lub `gpt-4o-mini`.
- **Klucz API AI**: Twój klucz, przechowywany po stronie serwera i nigdy nieujawniany na front-office. Dopóki pole jest puste, funkcje AI pozostają wyłączone, a reszta modułu działa normalnie.

### Prywatność

- **Respektuj zgodę na pliki cookie**: włączone domyślnie. Znaczniki śledzenia (wyświetlenia i kliknięcia) uruchamiają się dopiero po wykryciu zgody.

Odpowiedni jest każdy dostawca udostępniający standardowy kontrakt _chat completions_. Wystarczy dopasować adres i nazwę modelu.

## Tworzenie segmentu

Segment to grupa odbiorców zdefiniowana przez jedną lub kilka **reguł**. Przejdź do **Smart Content > Segmenty > Dodaj segment**.

- **Nazwa**: wewnętrzna etykieta (np. „Klienci VIP”).
- **Logika dopasowania**: _Wszystkie reguły (I)_ wymaga spełnienia każdej reguły; _Co najmniej jedna reguła (LUB)_ wystarczy, że spełniona jest jedna.
- **Priorytet**: segmenty o wyższym priorytecie są oceniane w pierwszej kolejności.
- **Reguły**: dodawaj warunki wiersz po wierszu w wizualnym kreatorze.

Segment bez żadnej reguły pasuje do wszystkich: przydaje się jako grupa domyślna.

### Lista reguł

Każda reguła składa się z **atrybutu**, **operatora** i **wartości**. Dla list rozdziel wartości przecinkami. Dla zakresów (operator _between_) podaj dwie wartości rozdzielone przecinkiem.

- `customer_group`: grupa klientów (ID). Operatory: in / not_in.
- `logged_in`: odwiedzający zalogowany (1 lub 0). Operator: eq.
- `new_returning`: `new` lub `returning` na podstawie historii zamówień. Operator: eq.
- `country`: kraj (ID). Operatory: in / not_in.
- `language`: język (ID). Operatory: in / not_in.
- `currency`: waluta (ID). Operatory: in / not_in.
- `device`: `desktop`, `tablet` lub `mobile`. Operator: in.
- `orders_count`: liczba prawidłowych zamówień. Operatory: gte / lte / eq / between.
- `total_spent`: łączna wydana kwota. Operatory: gte / lte / between.
- `days_since_order`: liczba dni od ostatniego zamówienia. Operatory: gte / lte / between.
- `cart_total`: wartość bieżącego koszyka. Operatory: gte / lte / between.
- `cart_has_category`: kategoria obecna w koszyku (ID). Operator: in.
- `cart_has_product`: produkt obecny w koszyku (ID). Operator: in.
- `newsletter`: zapisany do newslettera (1 lub 0). Operator: eq.
- `source_utm`: źródło UTM sesji. Operatory: eq / contains.
- `referrer`: witryna odsyłająca. Operatory: contains / not_contains.
- `hour_range`: przedział godzinowy (np. `9,18`). Operator: between.
- `weekday`: dzień tygodnia (1 = poniedziałek do 7 = niedziela). Operator: in.
- `visits`: liczba wizyt odwiedzającego. Operatory: gte / lte / eq.

Panel „Identyfikatory referencyjne” wyświetlany pod kreatorem wypisuje ID Twoich grup, języków i walut, dzięki czemu nie musisz ich szukać gdzie indziej.

**Przykład**: segment „Duzi klienci do odzyskania”, logika I: `total_spent` gte `200` oraz `days_since_order` gte `60`.

## Tworzenie kampanii

Kampania publikuje treść dla jednego lub kilku segmentów w wybranej strefie motywu. Przejdź do **Smart Content > Kampanie > Dodaj kampanię**.

- **Nazwa**: etykieta wewnętrzna.
- **Strefa wyświetlania**: hook, w którym pojawia się treść (lista poniżej).
- **Segmenty docelowe**: jeden lub kilka segmentów. Zostaw puste, aby kierować do wszystkich odwiedzających.
- **Priorytet**: jeśli kilka kampanii celuje w tę samą strefę, wygrywa pasująca kampania o najwyższym priorytecie.
- **Testy A/B**: włącz, aby publikować kilka wariantów (patrz osobna sekcja).
- **Limit częstotliwości**: maksymalna liczba wyświetleń na odwiedzającego (0 = bez limitu), w oknie wyrażonym w dniach.
- **Data początku i końca**: opcjonalny harmonogram kampanii.
- **Warianty treści**: treść HTML, edytowalna per język.

### Dostępne strefy wyświetlania

`displayHome`, `displayTop`, `displayNav1`, `displayBanner`, `displayWrapperTop`, `displayWrapperBottom`, `displayLeftColumn`, `displayRightColumn`, `displayFooter`, `displayProductAdditionalInfo`, `displayShoppingCartFooter`.

## Testy A/B

Włącz opcję **testy A/B** na kampanii, a następnie dodaj kilka wariantów. Każdy wariant ma etykietę (A, B i kolejne) oraz **wagę**. Moduł losuje wariant przy każdym wyświetleniu, proporcjonalnie do wag. Bez testów A/B używany jest pierwszy aktywny wariant.

Treść każdego wariantu wprowadza się per język. Pulpit porównuje następnie wyniki poszczególnych wariantów (wyświetlenia, CTR, CVR, obrót).

Aby uzyskać podział 50/50, nadaj obu wariantom tę samą wagę (na przykład 1 i 1). Aby rozłożyć ruch 70/30, użyj wartości 7 i 3.

## Generator treści AI

W edytorze kampanii panel **Generator treści AI** redaguje blok HTML nastawiony na konwersję. Podaj nazwę segmentu, opis grupy odbiorców, cel komunikatu i ton, wybierz język, a następnie kliknij **Generuj**. Wygenerowana treść trafia do pola tekstowego aktywnego wariantu i języka.

Funkcja wymaga klucza API wpisanego w Ustawieniach.

## Propozycje segmentów przez AI

W sekcji **Smart Content > Segmenty** przycisk **Propozycje segmentów przez AI** otwiera stronę podsumowującą rzeczywiste statystyki Twojego sklepu (aktywni klienci, zamówienia, kupujący powracający, zapisani do newslettera). Kliknij **Generuj propozycje**: AI zaproponuje od 3 do 5 segmentów o wysokiej wartości, każdy z opisem, uzasadnieniem i zestawem reguł gotowych do przepisania do formularza tworzenia.

## Pulpit i statystyki

**Smart Content > Pulpit** zbiera wyniki z wybranego okresu: wyświetlenia, kliknięcia i współczynnik klikalności (CTR), konwersje i współczynnik konwersji (CVR) oraz przypisany obrót. Jedna tabela pokazuje wyniki w podziale na kampanie, druga porównuje warianty A/B.

### Jak przypisywane są konwersje

Po kliknięciu w spersonalizowany blok ostatnia interakcja (kampania, wariant, segment) zapisywana jest w cookie sesji. Przy zatwierdzeniu zamówienia moduł przypisuje konwersję i jej obrót tej kampanii, a następnie kasuje przypisanie, aby uniknąć podwójnego liczenia.

## Prywatność i RODO

- Żadne dane osobowe nie są przechowywane: śledzenie opiera się na anonimowym identyfikatorze odwiedzającego (hash), używanym do limitu częstotliwości i deduplikacji.
- Opcja **Respektuj zgodę na pliki cookie** warunkuje uruchomienie pomiarów. Rozpoznawane sygnały: `window.dfscConsentGranted = true` albo cookie `hideBanner=1`, `axeptio_authorized`, `cookieconsent_status=allow`.
- Aby podłączyć własną platformę zgód, ustaw `window.dfscConsentGranted` na `true` po uzyskaniu zgody.

## Wstawianie przez widget

Moduł implementuje interfejs widgetu PrestaShop. Blok możesz więc wstawić bezpośrednio w szablonie:

```
{widget name='dfsmartcontent' hook='displayHome'}
```

Parametr `hook` wskazuje, którą strefę ocenić.

## FAQ i rozwiązywanie problemów

### Mój blok się nie wyświetla

Sprawdź, czy kampania jest aktywna, czy jej strefa odpowiada hookowi obecnemu w Twoim motywie, czy co najmniej jeden wariant ma treść dla bieżącego języka i czy odwiedzający rzeczywiście pasuje do docelowego segmentu. Po osiągnięciu limitu częstotliwości blok nie jest już pokazywany temu odwiedzającemu w zdefiniowanym oknie.

### Statystyki pozostają na zerze

Jeśli opcja zgody jest włączona, znaczniki uruchamiają się dopiero po jej udzieleniu. Sprawdź, czy Twój baner cookie wysyła jeden z rozpoznawanych sygnałów, albo ustaw `window.dfscConsentGranted`.

### Funkcje AI zwracają błąd

Upewnij się, że klucz API, adres endpointu i model są poprawne w Ustawieniach oraz że Twój serwer może połączyć się z endpointem na wyjściu.
