PS PrestaShop Początkujący

dfredirects: menedżer przekierowań 301

Instalacja i konfiguracja menedżera przekierowań 301 dla PrestaShop 8 i 9: reguły, wildcard, regex, monitoring błędów 404 i import CSV.

Zaktualizowano Wersja modułu 1.0.1

Wprowadzenie

dfredirects to kompletny menedżer przekierowań dla PrestaShop 8 i 9. Obsługuje kody HTTP 301, 302, 307, 308 i 410, oferuje trzy strategie dopasowania (dokładne, wildcard, regex PCRE), monitoruje błędy 404 i automatycznie tworzy przekierowania, gdy zmieniasz slug produktu, kategorii, strony CMS, producenta albo dostawcy.

Instalacja

  1. Przejdź do Moduły → Menedżer modułów → Wgraj moduł.
  2. Wgraj plik dfredirects-1.0.1.zip.
  3. Kliknij Zainstaluj.
  4. W back office pojawia się nowe menu Redirects z czterema zakładkami: Dashboard, Rules, 404 Log oraz Import / Export / Settings.

Instalacja tworzy trzy tabele: ps_dfredirects_rule (reguły), ps_dfredirects_notfound (zalogowane błędy 404) i ps_dfredirects_slug_snapshot (migawki adresów przed modyfikacją). Deinstalacja usuwa te tabele i całą konfigurację.

Wymagania: PrestaShop minimum 8.0, PHP 8.1 albo nowsze. Moduł działa identycznie na PrestaShop 9.

Polski sklep: interfejs back office modułu jest dostarczany po francusku i angielsku. W polskim sklepie wyświetla się w języku angielskim, dlatego w tym przewodniku nazwy zakładek i pól podajemy w oryginale. Nie ma to wpływu na działanie przekierowań, które są niezależne od języka interfejsu.

Konfiguracja

Przejdź do Redirects → Import / Export / Settings. Dostępne parametry:

  • Log 404 errors: główny przełącznik loggera błędów 404.
  • Log bot 404s: uwzględniać albo nie żądania znanych robotów (Googlebot, Bingbot, GPTBot, ClaudeBot i inne). Zalecane: wyłączone, aby log pozostał czytelny.
  • Auto-redirect on slug change: włączenie automatycznego tworzenia przekierowań 301 przy zmianie adresu.
  • Preserve query string by default: domyślna wartość pola preserve_qs dla nowych reguł.
  • 404 log retention (days): czas przechowywania logów 404 przed automatycznym czyszczeniem. Wartość 0 wyłącza czyszczenie.
  • Default HTTP code: kod stosowany w regułach tworzonych automatycznie (zalecane 301).
  • Ignored URL patterns: jeden wzorzec na linię, dopasowanie po podciągu. Przykłady: .well-known, wp-admin, autodiscover. Pasujące adresy nigdy nie trafią do logu.

Tworzenie reguły przekierowania

W Redirects → Rules kliknij New rule. Każda reguła zawiera:

  • Source URL: adres do przechwycenia (ścieżka względna, na przykład /stara-strona).
  • Match type: exact, wildcard albo regex (opis poniżej).
  • Target URL: cel (ścieżka względna albo adres bezwzględny dla domeny zewnętrznej). Puste pole dla kodu 410.
  • HTTP code: 301 (trwałe, zalecane pod SEO), 302 (tymczasowe), 307 i 308 (zachowują metodę HTTP), 410 (treść usunięta na stałe, bez celu).
  • Preserve query string: gdy włączone, ?utm_source=x jest przenoszony do celu.
  • Shop / Language: zakres reguły. Wartość 0 oznacza wszystkie sklepy i wszystkie języki.
  • Note: dowolne pole na Twoje adnotacje.

Dopasowanie dokładne

Żądany adres musi dokładnie odpowiadać źródłu (po normalizacji: małe litery, bez query stringa, bez końcowego ukośnika). To najwydajniejszy typ: indeksowany odczyt z bazy o stałym koszcie, niezależnie od rozmiaru tabeli.

Dopasowanie wildcard

Gwiazdka * przechwytuje dowolną sekwencję. Przechwycone fragmenty wykorzystasz w celu przez $1, $2 i kolejne.

Źródło: /stara-kategoria/*
Cel:    /nowa-kategoria/$1

/stara-kategoria/moj-produkt  →  /nowa-kategoria/moj-produkt

Dopasowanie regex

Pełna składnia PCRE między ogranicznikami tyldy. Grupy przechwytujące wykorzystasz przez $1, $2 i kolejne. Do cyfr używaj klasy [0-9] (odpowiednik skrótu z odwrotnym ukośnikiem i literą d).

Źródło: ~^/product/([0-9]+)/(.*)$~
Cel:    /p/$1-$2

/product/42/super-produkt  →  /p/42-super-produkt

Modyfikator e (wykonywanie kodu) jest automatycznie usuwany ze względów bezpieczeństwa. Nieprawidłowe reguły regex są odrzucane przy tworzeniu i przy imporcie.

Automatyczne przekierowania przy zmianie sluga

Gdy opcja jest włączona, moduł zapisuje adres każdego obiektu przed jego aktualizacją (hook UpdateBefore), porównuje go po aktualizacji (hook UpdateAfter) i tworzy przekierowanie 301, jeśli adres się zmienił. Działa to dla produktów, kategorii, stron CMS, producentów i dostawców, w każdym aktywnym języku i sklepie.

Przy usunięciu produktu tworzone jest przekierowanie do jego domyślnej kategorii. Przy usunięciu kategorii do kategorii nadrzędnej. Jeśli żaden sensowny cel nie istnieje, celem awaryjnym jest strona główna.

Wykrywanie łańcuchów i pętli

Jeśli istnieje reguła A do B, a Ty zmienisz slug B na C, moduł automatycznie zaktualizuje regułę A tak, aby wskazywała bezpośrednio na C (rozwiązywanie rekurencyjne, maksymalnie 5 poziomów). Reguły zaktualizowane w ten sposób mają w notatce oznaczenie [chain-fix]. Pętle (A do B do A) są wykrywane, a utworzenie reguły odrzucane.

Automatyczne przekierowania powstają tylko wtedy, gdy pole link_rewrite obiektu jest wypełnione w danym języku. Źle sformułowane adresy (segmenty złożone wyłącznie z cyfr i myślników) są odrzucane.

Monitoring błędów 404

Każda nieznaleziona strona trafia do Redirects → 404 Log wraz z adresem, referrerem, user-agentem, adresem IP, licznikiem trafień i datą ostatniej wizyty. Domyślny filtr ukrywa boty i wpisy już rozwiązane.

Tworzenie przekierowania z poziomu błędu 404

Kliknij akcję Create redirect przy wpisie 404. Moduł analizuje Twój katalog i proponuje do 5 prawdopodobnych celów (produkty, kategorie, strony CMS), uszeregowanych według podobieństwa, z wizualnym wynikiem. Wybierz propozycję albo wpisz adres ręcznie, wskaż kod HTTP i zatwierdź: reguła zostaje utworzona, a błąd 404 oznaczony jako rozwiązany.

Import i eksport CSV

Format pliku

source_url,target_url,match_type,http_code,id_shop,id_lang,preserve_qs,active,note
/stara-strona,/nowa-strona,exact,301,0,0,1,1,migracja 2026
/produkty/*,/products/$1,wildcard,301,0,0,1,1,pl na en
~^/cat-([0-9]+)/$~,/category/$1,regex,301,0,0,1,1,identyfikatory liczbowe

Obowiązkowe są wyłącznie kolumny source_url i target_url (cel opcjonalny przy kodzie 410). Separatory przecinek, średnik, tabulator i pionowa kreska są wykrywane automatycznie. Opcja Update existing rules włącza tryb UPSERT: istniejące już źródło jest aktualizowane zamiast pomijane.

Raport importu pokazuje liczbę reguł zaimportowanych, zaktualizowanych i pominiętych oraz szczegóły błędów wiersz po wierszu (nieprawidłowy regex, brak źródła i tak dalej).

Eksport

Przycisk Download CSV eksportuje wszystkie reguły w UTF-8 z BOM, gotowe do otwarcia w Excelu.

Pulpit

Pulpit pokazuje: liczbę aktywnych reguł (wraz z udziałem reguł wygenerowanych automatycznie), łączną liczbę obsłużonych przekierowań, liczbę nierozwiązanych błędów 404, trend błędów 404 z 30 dni, top 5 najczęstszych błędów 404, top 5 najczęściej używanych przekierowań oraz listę reguł martwych (utworzonych ponad 90 dni temu i nigdy nieużytych), będących kandydatami do usunięcia, aby tabela pozostała lekka.

Rozwiązywanie problemów

Moje przekierowanie się nie uruchamia

  • Sprawdź, czy reguła jest aktywna i czy jej zakres sklepu i języka odpowiada żądaniu.
  • Reguły dokładne są sprawdzane przed wildcard i regex: upewnij się, że reguła dokładna nie przesłania Twojego wzorca.
  • Wyczyść pamięć podręczną PrestaShop (var/cache/).

Zbyt wiele błędów 404 generowanych przez boty

Wyłącz Log bot 404s w ustawieniach albo dodaj wzorce w Ignored URL patterns (na przykład .well-known, wp-, autodiscover).

Automatyczne przekierowanie nie powstało przy zmianie sluga

  • Automatyczne przekierowanie uruchamia się tylko wtedy, gdy faktycznie zmieni się link_rewrite. Sama zmiana nazwy nie wystarczy.
  • Sprawdź, czy opcja Auto-redirect on slug change jest włączona.
  • Jeśli obiekt był wyłączony albo jego link_rewrite był pusty w danym języku, migawka nie została zapisana.

Historia zmian

1.0.1, 11 maja 2026

  • Walidacja generowanych adresów przed zapisem: odrzucanie źle sformułowanych źródeł.
  • Pomijanie generowania, gdy link_rewrite jest pusty dla bieżącego języka albo sklepu.

1.0.0, 11 maja 2026

  • Wersja początkowa: silnik przekierowań (dokładne, wildcard, regex), monitoring błędów 404, automatyczne przekierowania, import i eksport CSV, sugestie, pulpit.
Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia