# Automatyczny znak wodny na zdjęciach produktów: pełny przewodnik

> Dokumentacja modułu Automatyczny Znak Wodny dla PrestaShop 8 i 9: tryby logo i tekst, krycie, pozycje, mozaika, WebP i AVIF, regeneracja miniatur.

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

## Wprowadzenie

Moduł DataFirefly Znak wodny nakłada logo lub tekst na miniatury zdjęć produktów. Znak wodny jest nakładany, gdy zdjęcie zostaje dodane do produktu, przy imporcie CSV, przez webservice i przy każdej regeneracji miniatur. Pliki oryginalne nigdy nie są modyfikowane: każda miniatura jest oznaczana na podstawie świeżej kopii oryginału, a każdy oznaczony plik otrzymuje odcisk, który zapobiega nałożeniu drugiego znaku wodnego.

Ten przewodnik dotyczy wersji 1.1.1.

## Wymagania

- **PrestaShop** od 1.7.0 do 9.x.
- **PHP** od 5.4 do 8.4 z rozszerzeniem **GD**. Bez GD instalacja zostaje odrzucona.
- **FreeType** (wkompilowany w GD) dla trybu tekstowego. Jeśli go brakuje, strona konfiguracji o tym informuje, a tryb logo pozostaje dostępny.
- Przetwarzanie plików **WebP** i **AVIF** zależy od tego, co potrafi zapisać biblioteka GD na serwerze. Nieobsługiwane formaty są wyszarzone w zakładce Reguły.

## Instalacja

1. W panelu administracyjnym otwórz **Moduły > Menedżer modułów**.
2. Kliknij **Prześlij moduł** i upuść archiwum ZIP.
3. Po zakończeniu instalacji kliknij **Konfiguruj**.

Ustawienia domyślne są gotowe do użycia: logo w prawym dolnym rogu, krycie 60%, rozmiar 25% szerokości, margines 3%, minimalna szerokość 250 px, wszystkie rozmiary miniatur o szerokości co najmniej 250 px i wszystkie formaty obsługiwane przez serwer. W trybie tekstowym domyślny tekst to `© {shop_name}`. Wystarczy przesłać logo.

## Aktualizacja z wersji 1.0.x

1. Prześlij archiwum 1.1.1 na poprzednią wersję w menedżerze modułów. PrestaShop uruchomi skrypt aktualizacji.
2. Twoje ustawienia zostają zachowane: logo, krycie, rozmiar, pozycja, zaznaczone rozmiary, formaty. Marginesy w pikselach z wersji 1.0.x są zastępowane marginesem procentowym. W trybie tekstowym pozostaje zwykła czcionka bez efektu, aby wygląd się nie zmienił.
3. Pojawi się komunikat **Ostatni krok po aktualizacji**. Kliknij **Otwórz Katalog**, a następnie **Wygeneruj wszystko ponownie**.

Ta regeneracja odtwarza każdą miniaturę z oryginału przed nałożeniem znaku wodnego. Usuwa znaki wodne nałożone wielokrotnie przez wersję 1.0.1 podczas kolejnych regeneracji w PrestaShop 8 i 9. Komunikat znika po zakończeniu przetwarzania.

Dopóki „Wygeneruj wszystko ponownie” nie zostanie uruchomione, moduł nie nakłada nowego znaku na stary: każda miniatura przetwarzana w tym czasie jest najpierw odtwarzana z oryginału.

## Strona konfiguracji

U góry strony przełącznik pokazuje **Automatyczny znak wodny włączony** lub **wyłączony**. Po wyłączeniu moduł nie zmienia dodawanych ani regenerowanych zdjęć, a miniatury już oznaczone pozostają bez zmian. Link prowadzi do tej dokumentacji.

Ustawienia są podzielone na trzy zakładki: **Wygląd**, **Reguły** i **Katalog**. Gdy tylko zmienisz ustawienie, na dole ekranu pojawi się pasek **Niezapisane zmiany** z dwoma przyciskami: **Odrzuć** i **Zapisz**. Przed zapisaniem nic nie jest stosowane do zdjęć.

## Zakładka Wygląd

### Rodzaj znaku wodnego

Wybierz **Logo** lub **Tekst**.

### Logo

- Przeciągnij plik na **Upuść tutaj swoje logo** lub kliknij, aby go wybrać. Akceptowane formaty: PNG (zalecany przezroczysty), WebP, GIF lub JPG, maksymalnie 5 MB i 40 megapikseli.
- Logo jest konwertowane do PNG, zmniejszane do 1600 px, jeśli jest większe, a jego przezroczyste krawędzie są przycinane. Rozmiar i margines dotyczą więc widocznej grafiki, a nie pustego obszaru wokół niej.
- **Zastąp** przesyła nowy plik, **Usuń** kasuje logo.

### Tekst

- **Tekst znaku wodnego**: maksymalnie 120 znaków. Przycisk **Wstaw zmienną** dodaje zmienną w miejscu kursora.
- **Czcionka**: DejaVu Sans, Sans Bold, Sans Condensed Bold lub Serif. Czcionki są dołączone do modułu, wynik jest identyczny na każdym hostingu.
- **Kolor**, **Efekt** (Brak, Cień lub Obrys) i **Kąt** od -90° do 90°. Cień lub obrys utrzymują czytelność tekstu na jasnych i ciemnych zdjęciach.

Dostępne zmienne, podstawiane osobno dla każdego zdjęcia:

- `{shop_name}`: nazwa sklepu
- `{domain}`: domena sklepu
- `{year}`: bieżący rok
- `{product_name}`: nazwa produktu
- `{reference}`: kod referencyjny produktu
- `{manufacturer}`: marka produktu

Przykład: `© {shop_name} · {reference}` daje „© Maison Lumen · NW-SNK-01” na zdjęciach produktu o kodzie NW-SNK-01.

### Rozmieszczenie

- **Pozycja**: 9 punktów zakotwiczenia (narożniki, środki krawędzi, środek) lub **Mozaika**, która powtarza znak wodny w szachownicę na całym zdjęciu. Mozaika najlepiej chroni przed ponownym użyciem, narożnik daje dyskretny podpis.
- **Krycie**: od 5 do 100%.
- **Rozmiar w % szerokości obrazu**: od 5 do 100%.
- **Margines od krawędzi**: od 0 do 20%, dla pozycji zakotwiczonych.
- **Odstęp między powtórzeniami**: tylko dla mozaiki.

Ponieważ rozmiar i margines są względne dla każdego zdjęcia, znak wodny zachowuje te same proporcje na wszystkich rozmiarach miniatur.

### Podgląd na żywo

Podgląd jest generowany przez ten sam silnik co zdjęcia w sklepie, na podstawie jednego z ostatnich produktów. Menu **Produkt** i przycisk **Inny produkt** zmieniają wyświetlane zdjęcie, menu **Rozmiar** wybiera miniaturę. Przyciski **Oryginał**, **Ze znakiem** i **Porównaj** przełączają widok; w trybie Porównaj przesuń suwak, aby zobaczyć stan przed i po. Podgląd informuje też, gdy wybrany produkt jest wykluczony lub gdy wyświetlany rozmiar jest poniżej minimalnej szerokości.

## Zakładka Reguły

### Rozmiary miniatur ze znakiem wodnym

Zaznacz typy zdjęć produktów do przetwarzania. Każdy typ pokazuje swoje wymiary. Domyślnie zaznaczone są wszystkie rozmiary o szerokości co najmniej 250 px.

### Minimalna szerokość

Miniatury węższe niż ta wartość pozostają bez znaku wodnego, nawet jeśli ich rozmiar jest zaznaczony. Na małych zdjęciach w koszyku i wyszukiwarce znak wodny byłby nieczytelny.

### Formaty plików

JPG, PNG, WebP i AVIF. PrestaShop 8 i 9 mogą generować kopie WebP i AVIF obok formatu głównego: pozostaw zaznaczone wszystkie formaty generowane przez sklep, inaczej jedna wersja zdjęcia zostałaby bez znaku wodnego. Formaty, których GD nie potrafi zapisać na Twoim serwerze, są wyszarzone.

### Wykluczenia

- **Zachowaj okładki bez znaku wodnego**: Google Merchant Center odrzuca zdjęcia produktów ze znakiem wodnym lub logo. Zaznacz tę opcję, jeśli Twoje okładki zasilają Google Shopping; pozostałe zdjęcia produktu nadal są oznaczane.
- **Wykluczone kategorie**: produkt powiązany z jedną z tych kategorii zachowuje zdjęcia bez znaku wodnego.
- **Wykluczone marki** i **ID wykluczonych produktów**.

Listy kategorii i marek mają pole wyszukiwania. Oznaczone zdjęcie, które zostaje wykluczone, jest czyszczone przy następnym przetwarzaniu.

## Zakładka Katalog

### Statystyki

Cztery liczniki: **Obrazy ze znakiem wodnym** (w liczbie plików), **Oczekujące** (nowe zdjęcia lub zmienione ustawienia), **Wykluczone** (bez znaku wodnego zgodnie z regułami) i **Błędy**. Wyświetlana jest data ostatniego uruchomienia.

### Zastosuj do katalogu

- **Przetwórz oczekujące obrazy**: nakłada znak wodny na nowe zdjęcia i aktualizuje te, których dotyczą ostatnie zmiany. Aktualne pliki są pomijane. Tej akcji używaj po każdej zmianie ustawień.
- **Wygeneruj wszystko ponownie**: odtwarza każdą miniaturę z oryginału, a następnie nakłada znak wodny. Używaj jej po aktualizacji z wersji 1.0.x lub gdy inne narzędzie zmieniło miniatury.
- **Usuń znak wodny**: odtwarza czyste miniatury z oryginałów i wyłącza automatyczny znak wodny.

Przetwarzanie odbywa się w partiach trwających kilka sekund, z paskiem postępu i przyciskiem **Anuluj**. Działa na hostingu współdzielonym z ograniczonym czasem wykonywania PHP. Nie zamykaj karty podczas przetwarzania; jeśli je przerwiesz, uruchom tę samą akcję ponownie, aby ją dokończyć.

### Testuj na jednym produkcie

Wpisz **ID produktu** i kliknij **Zastosuj**, aby nałożyć znak wodny na jego zdjęcia z bieżącymi ustawieniami, lub **Wyczyść**, aby przywrócić je bez znaku. Następnie sprawdź kartę produktu w sklepie (wyczyść pamięć podręczną przeglądarki, jeśli nadal widać stare zdjęcie).

## Jak to działa

Moduł korzysta z hooka `actionWatermark`, który PrestaShop wywołuje po utworzeniu miniatur zdjęcia produktu. Dla każdej miniatury spełniającej Twoje reguły moduł:

1. sprawdza jej odcisk: jeśli plik ma już znak wodny z bieżącymi ustawieniami i nie został zmieniony, pozostaje bez zmian;
2. w przeciwnym razie odtwarza miniaturę z oryginalnego zdjęcia, z wymiarami i trybem skalowania PrestaShop;
3. nakłada znak wodny, zapisuje plik z poziomami jakości ustawionymi w ustawieniach zdjęć sklepu i zapamiętuje jego odcisk.

W ten sposób rozwiązany jest problem regeneracji w PrestaShop 8 i 9: gdy opcja usuwania poprzednich zdjęć nie jest zaznaczona, PrestaShop tworzy tylko brakujące miniatury, a następnie wywołuje hook dla wszystkich zdjęć. Bez odcisku moduł znaku wodnego oznaczyłby istniejące miniatury po raz drugi.

Moduł obsługuje też miniatury wysokiej gęstości (`2x`) z PrestaShop 1.7 i 8 oraz opcję „PNG dla wszystkich obrazów”, która zapisuje dane PNG w plikach `.jpg`. Przezroczyste zdjęcia zachowują przezroczystość.

Natywna regeneracja PrestaShop nadal działa: **Wygląd > Ustawienia zdjęć** lub z wiersza poleceń w PrestaShop 8 i 9:

```
php bin/console prestashop:thumbnails:regenerate products
```

## Multistore

PrestaShop współdzieli pliki zdjęć produktów między wszystkimi sklepami. Ustawienia modułu są więc wspólne dla wszystkich sklepów, niezależnie od kontekstu wybranego w panelu. Zmienne `{shop_name}` i `{domain}` pochodzą ze sklepu aktywnego w chwili przetwarzania: jeśli Twoje sklepy mają różne nazwy, lepiej użyć stałego tekstu lub logo.

## Odinstalowanie

Odinstalowanie usuwa ustawienia, logo i dwie tabele modułu. Miniatury już oznaczone nie są zmieniane. Aby odzyskać czyste zdjęcia, najpierw kliknij **Usuń znak wodny** w zakładce Katalog, a potem odinstaluj moduł. Możesz też odinstalować moduł i zregenerować miniatury w **Wygląd > Ustawienia zdjęć** z zaznaczoną opcją usuwania poprzednich zdjęć.

## Rozwiązywanie problemów

**Znak wodny nie jest nakładany.** Sprawdź, czy przełącznik jest włączony, czy logo zostało przesłane (lub tekst wpisany), czy w zakładce Reguły zaznaczono co najmniej jeden rozmiar i jeden format oraz czy produkt nie jest wykluczony. Następnie uruchom „Przetwórz oczekujące obrazy” lub „Testuj na jednym produkcie”.

- **Sklep nadal pokazuje stare zdjęcie**: przeglądarka lub CDN przechowuje starą wersję w pamięci podręcznej. Odśwież bez pamięci podręcznej lub wyczyść CDN.
- **Licznik błędów większy od zera**: zwykle brakuje oryginalnego zdjęcia na dysku lub jest ono nieczytelne. Otwórz produkt, zastąp zdjęcie i uruchom przetwarzanie ponownie.
- **Tryb tekstowy jest niedostępny**: biblioteka GD na serwerze nie ma FreeType. Poproś hostingodawcę o włączenie go lub użyj trybu logo z plikiem PNG zawierającym Twój tekst.
- **WebP lub AVIF wyszarzone**: GD nie potrafi zapisać tego formatu na Twoim serwerze. Te pliki nie są przetwarzane.
- **Znak wodny zbyt mały na miniaturach**: rozmiar jest proporcjonalny, zwiększ go lub wyklucz małe rozmiary za pomocą minimalnej szerokości.
- **Dwa znaki wodne widoczne po aktualizacji z 1.0.1**: uruchom „Wygeneruj wszystko ponownie” w zakładce Katalog.

## FAQ

### Czy moje oryginalne zdjęcia są modyfikowane?

Nie. Znak wodny trafia tylko na miniatury, zawsze tworzone ze świeżej kopii oryginału.

### Czy po każdej zmianie ustawień trzeba regenerować miniatury?

Nie. Zdjęcia, których dotyczy zmiana, stają się oczekujące. Jedno kliknięcie „Przetwórz oczekujące obrazy” aktualizuje je bez ponownego tworzenia pozostałych.

### Czy zdjęcie może dostać dwa znaki wodne?

Nie. Każdy oznaczony plik zachowuje odcisk. Aktualny plik jest pomijany; plik oznaczony starszymi ustawieniami lub zmieniony przez inne narzędzie jest odtwarzany z oryginału przed oznaczeniem.

### Czy znak wodny trafia na zdjęcia importowane z CSV?

Tak. PrestaShop wywołuje ten sam hook przy imporcie i przez webservice.

### Czy moduł spowalnia sklep?

Nie. Znak wodny jest obliczany przy tworzeniu miniatur, nigdy przy wyświetlaniu stron.

### Czy moduł jest zgodny z PrestaShop 1.7?

Tak, od PrestaShop 1.7.0 do 9.x, z PHP od 5.4 do 8.4.
