Jak ustawić przyjazne linki w PrestaShop

Porządne adresy w sklepie to nie tylko estetyka, ale klucz do tego, by produkty były znajdowane i chętniej klikane. Ustawiając przyjazne linki w panelu sklepu, wpływasz na widoczność w wynikach, współczynnik kliknięć i rozpoznawalność marki. W tym poradniku, krok po kroku, konfigurujemy wszystko w SEO i w serwerze, tak aby działało stabilnie, szybko i bez błędów. Przejdziemy przez panel PrestaShop, reguły na serwerze, wzorce URL, wersje językowe, przekierowania i testy, a na końcu sprawdzimy, jak diagnozować najczęstsze pułapki.

Przygotowanie środowiska i kontrola wymagań

Rozpoznanie wersji sklepu i różnic konfiguracyjnych

Najpierw sprawdź wersję sklepu, ponieważ nazwy zakładek i dostępne funkcje różnią się między wydaniami 1.6, 1.7 i 8.x. Wersję znajdziesz w panelu administracyjnym, zwykle w stopce lub w Informacjach o konfiguracji. W 1.6 opcje znajdują się w Preferencje → SEO i URL, w 1.7/8.x w Parametry sklepu → Ruch i SEO. W nowszych wersjach pojawiają się też udogodnienia dotyczące wzorców linków, reguł kanonicznych i (eksperymentalnie) usuwania identyfikatorów z adresów.

Wymagania serwera i dostęp do konfiguracji

Skuteczność przyjaznych linków zależy od serwera WWW i tego, jak obsługuje przepisywanie adresów. Na Apache potrzebna jest aktywna biblioteka mod_rewrite oraz odpowiednie AllowOverride (najczęściej All) dla katalogu sklepu, aby .htaccess mógł działać. Na Nginx musisz dodać reguły, które przekierują żądania do index.php, jeśli nie ma pliku ani katalogu o podanym adresie. Upewnij się też, że masz dostęp do panelu hostingu lub plików konfiguracyjnych, oraz że włączone są standardowe moduły PHP wymagane przez PrestaShop.

Kopia zapasowa i plan wycofania zmian

Przed zmianami wykonaj kopię zapasową bazy danych i plików, a najlepiej zrób to dwutorowo: automatycznie w hostingu i manualnie (eksport SQL, archiwum katalogu sklepu). Zmiany adresów URL wpływają na SEO i użytkowników; w razie błędu chcesz móc szybko wrócić do poprzedniej wersji. Zanotuj bieżące ustawienia w panelu i nazwy ważnych plików (np. .htaccess), by po testach z łatwością porównać różnice.

Spójność domeny, protokołu i ścieżki

Przyjazne linki działają najlepiej, gdy domena, protokół (HTTP/HTTPS) i ewentualna ścieżka katalogu są jednorodne. Ustal docelowy wariant: z www czy bez, zawsze HTTPS. To istotne dla uniknięcia duplikacji i mieszanych treści. W panelu sklepu ustaw adres sklepu i domenę, a na serwerze skonfiguruj przekierowania, by każdy wariant prowadził do jednego kanonicznego adresu.

Tryb debugowania i logi

Jeśli spodziewasz się problemów, włącz tryb debugowania w środowisku testowym (lub chwilowo na produkcji poza godzinami szczytu). Dzięki temu szybciej wykryjesz błędy w regułach przepisywania i konfliktach modułów. Sprawdzaj również logi serwera: access.log i error.log. Informacje o błędach 404/500 i pętlach przekierowań (loop) są tam najbardziej czytelne.

Konfiguracja w panelu administracyjnym

Włączanie przyjaznych adresów URL

Przejdź do odpowiedniej sekcji panelu: w 1.6 to Preferencje → SEO i URL, a w 1.7/8.x Parametry sklepu → Ruch i SEO. Odnajdź ustawienie Przyjazne adresy URL i włącz je. Zapisane zmiany automatycznie przebudują reguły w pliku .htaccess (w przypadku Apache) i natychmiast zmienią sposób generowania linków. Jeśli panel zgłasza problem, upewnij się, że plik .htaccess jest zapisywalny i nie ma na nim restrykcyjnych praw.

Ustawienie adresu kanonicznego i przekierowań

W tej samej sekcji znajduje się opcja przekierowania do adresu kanonicznego. Wybierz typ przekierowania stałego canonical wykorzystując kod 301. Dzięki temu niezależnie od tego, jak użytkownik trafi na stronę (z parametrami, przez kopię adresu, z innego wariantu domeny), zostanie skierowany do właściwej, jedynej wersji URL. To eliminuje duplikację i wzmacnia sygnały SEO.

Akcenty w URL i transliteracja

PrestaShop oferuje opcję używania akcentowanych znaków w adresach. W językach z polskimi literami bezpieczniej jest je transliterować do ASCII, aby uniknąć problemów z niektórymi narzędziami i linkowaniem w zewnętrznych systemach. Ustaw więc, by adresy były transliterowane. W przypadku wielu języków w sklepie, transliteracja zapewnia przewidywalność i spójność adresów dla wszystkich lokalizacji.

Wzorce i schematy linków

W zakładce wzorców ustaw reguły dla produktów, kategorii, producentów i stron CMS. Najczęstszy wzorzec dla produktu to {id}-{rewrite}.html lub {rewrite}, w zależności od strategii i wersji sklepu. Zachowaj spójność w całym sklepie i unikaj częstych zmian wzorców, bo każda zmiana to konieczność masowych przekierowań. Dla bloga lub innych modułów sprawdź osobne ustawienia, by wzorce nie kolidowały z głównymi stronami.

Regeneracja pliku .htaccess i pliku robots

Po zmianach ponownie zapisz ustawienia, aby PrestaShop wygenerował aktualny plik .htaccess i ujednolicił przepisywanie adresów. W sekcji Ruch i SEO znajdziesz także przycisk do generowania pliku robots.txt. Wygeneruj go, sprawdź, czy nie blokuje kluczowych katalogów (themes, modules, img). Jeśli korzystasz z dodatkowych narzędzi analitycznych, dopisz wyjątki tak, aby boty miały dostęp do zasobów niezbędnych do renderowania strony.

Reguły serwera i pliki konfiguracyjne

Apache: aktywacja i test przepisywania

Na Apache wymagane jest włączenie modułu przepisywania adresów i odpowiednia polityka dla katalogu sklepu. Jeśli masz uprawnienia, sprawdzisz to poleceniami w panelu hostingu lub w konsoli administratora. Jeżeli nie masz dostępu root, skontaktuj się z hostingiem i poproś o potwierdzenie, że przepisywanie działa dla Twojej witryny i katalogu sklepu. Następnie sprawdź, czy zapis pliku .htaccess jest dozwolony i czy nie istnieją nadrzędne reguły kolidujące z regułami PrestaShop.

.htaccess: kolejność i konflikty reguł

Plik .htaccess tworzony przez PrestaShop powinien znajdować się w katalogu głównym instalacji. Jeśli dodajesz własne reguły (np. przekierowania starych adresów po migracji), dopisz je ponad sekcją generowaną przez sklep lub w wyraźnie oddzielonym bloku. Unikaj powielania warunków RewriteCond, które prowadzą do pętli. W razie problemów tymczasowo usuń własne wpisy i sprawdź, czy podstawowe reguły sklepu działają poprawnie.

Nginx: reguły try_files i mapowanie ścieżek

Na Nginx musisz ręcznie wprowadzić reguły obsługujące przepisywanie. Najważniejsza z nich powinna kierować żądania do index.php, kiedy plik lub katalog fizycznie nie istnieje. Warto też dodać kompresję, nagłówki cache dla statycznych zasobów oraz limitowanie nietypowych parametrów w URL. Po edycji konfiguracji przeładuj usługę i sprawdź logi, czy nie pojawiają się błędy 404 lub 403 dla standardowych podstron sklepu.

Proxy, CDN i nagłówki

Jeśli korzystasz z proxy lub CDN (np. Cloudflare), upewnij się, że nie ingerują w reguły przepisywania na poziomie aplikacji. CDN może przechowywać w cache zbyt agresywnie adresy z parametrami, co prowadzi do zaskakujących efektów. Skonfiguruj reguły omiń-cache dla koszyka, logowania i panelu, a także sprawdź, czy nagłówki no-cache są prawidłowo przekazywane. Dla wersji mobilnej nie wprowadzaj osobnych subdomen bez planu przekierowań i oznaczeń kanonicznych.

Sklepy wielodomenowe

W trybie multistore zaplanuj strukturę: osobne domeny, subdomeny czy katalogi. Każdy sklep ma własne wzorce URL i własne reguły. Po włączeniu multisklepu skonfiguruj domeny dla poszczególnych sklepów i zapisz ustawienia, aby wygenerować pliki .htaccess adekwatne do każdej instancji. Jeśli kilka sklepów współdzieli katalog instalacyjny, zwróć szczególną uwagę na kolejność reguł domenowych i ewentualne kolizje nazw ścieżek.

Porządkowanie adresów, ID w linkach i duplikacja

Usuwanie identyfikatorów z URL (funkcja eksperymentalna)

W nowszych wersjach 8.x pojawia się możliwość usunięcia identyfikatorów z adresów, tak aby pozostał wyłącznie przyjazny alias produktu lub kategorii. Rozwiązanie jest oznaczone jako eksperymentalne, dlatego włączaj je najpierw w środowisku testowym. Po wyłączeniu ID konieczne jest przygotowanie kompletnego zestawu przekierowań ze starych adresów, a także weryfikacja konfliktów aliasów (np. dwa produkty z tym samym skrótem).

Moduły do czyszczenia URL i bezpieczeństwo

Jeśli Twoja wersja sklepu nie obsługuje bez-ID natywnie, możesz użyć modułów od zaufanych dostawców. Sprawdź, czy moduł dodaje przekierowania 301, aktualizuje sitemap, jest kompatybilny z wersją Twojego motywu i nie modyfikuje krytycznych kontrolerów w sposób niekompatybilny z innymi rozszerzeniami. Przetestuj dokładnie działanie koszyka, kont użytkowników i ścieżki zakupowej, bo te obszary najczęściej ujawniają konflikty.

Migracja starych adresów i mapowanie przekierowań

Przy zmianie wzorców lub wyłączeniu ID opracuj mapę przekierowań. Zacznij od eksportu starych adresów (z logów, Google Analytics, Search Console, Screaming Frog), przypisz do nich nowe docelowe URL i zastosuj przekierowania stałe 301. Nie zbiorczo do strony głównej, lecz do najbliższego odpowiednika: produkt do produktu, kategoria do kategorii. Zminimalizujesz w ten sposób utratę mocy linków i zachowasz wiarygodność dla robotów wyszukiwarek.

Parametry filtrowania, paginacja i sortowanie

Adresy wyników filtrowania i sortowania generują rozmaite kombinacje parametrów. Aby uniknąć duplikowania treści, ustaw reguły kanoniczne w szablonie kategorii oraz wyklucz niektóre parametry z indeksowania, jeśli nie mają wartości dla użytkownika. Paginacja powinna zachowywać spójną strukturę z numerem strony i bez zmian wzorca przy zmianach filtrów. W razie potrzeby użyj rel=prev/next w starych wersjach lub logicznie grupuj listy produktów.

Wersje językowe, regiony i oznaczenia

W sklepach wielojęzycznych każda wersja językowa powinna mieć jednoznaczny prefiks w adresie (np. /pl/, /en/). Ujednolić wzorce aliasów, a w warstwie frontu zadbać o poprawne linki alternatywne hreflang. Zadbaj też o spójność tłumaczeń aliasów, by uniknąć niejasnych adresów, w których miesza się kilka języków. Po wdrożeniu zmian wykonaj crawl każdej wersji językowej i sprawdź, czy wszystkie linki wewnętrzne kierują do właściwych wersji regionalnych.

Testowanie, monitoring i rozwiązywanie problemów

Testy w przeglądarce i narzędziach deweloperskich

Po włączeniu przyjaznych linków sprawdź kluczowe ścieżki: strona główna, kategorie, produkt, koszyk, logowanie, rejestracja i CMS. Użyj trybu prywatnego, aby mieć pewność, że nie korzystasz z pamięci podręcznej. Narzędzia deweloperskie w przeglądarce pozwolą podejrzeć nagłówki odpowiedzi i ewentualne przekierowania. Zwróć uwagę, czy przejście między stronami nie powoduje wielokrotnych redirektów.

Crawl i mapa witryny

Uruchom crawler na domenie testowej lub produkcyjnej, aby przejść przez całą strukturę sklepu. Wyłapiesz w ten sposób błędy 404, zduplikowane tytuły i nieoczekiwane ścieżki. Zadbaj, by aktualna sitemap odzwierciedlała nowy układ i była dostępna w standardowej lokalizacji (np. /sitemap.xml). Po jej zaktualizowaniu prześlij ją w panelu Google Search Console i zweryfikuj liczbę zindeksowanych adresów.

Błędy 404/500 i pętle przekierowań

Jeżeli pojawiają się błędy 404 po kliknięciu w nowy adres, sprawdź alias obiektu (produkt, kategoria), wzorzec i reguły serwera. Błędy 500 zwykle wynikają z konfliktów modułów lub błędów w .htaccess. Pętla przekierowań świadczy o kolizji warunków (np. domena bez www → z www i odwrotnie). Analizuj logi, początkuj od najprostszej możliwej konfiguracji i stopniowo dodawaj własne reguły, aby zidentyfikować źródło problemu.

Wydajność, cache i stabilność

Po każdej większej zmianie oczyść cache sklepu, kompilację szablonów oraz CDN, aby unikać mieszania starych i nowych adresów. Monitoruj czas odpowiedzi i błędy w logach. W PrestaShop aktywuj cache plikowy lub Memcached/Redis, jeśli to możliwe, ale nie cachuj stron dynamicznych, takich jak koszyk czy konto użytkownika. Stabilne, szybkie działanie wpływa nie tylko na użytkowników, ale też na performance w wyszukiwarkach.

Lista kontrolna i dobre praktyki

  • Jedna kanoniczna domena i protokół dla całego sklepu.
  • Przyjazne URL włączone, transliteracja znaków ustawiona świadomie.
  • Spójne wzorce dla produktów, kategorii, producentów i CMS.
  • Przekierowania 301 dla każdej zmiany wzorca lub migracji.
  • Aktualny plik robots.txt i poprawna mapa witryny.
  • Brak kolizji reguł w .htaccess/Nginx i brak pętli przekierowań.
  • Testy w wielu językach, urządzeniach i pod protokołem HTTPS.
  • Stały monitoring logów, błędów 404 oraz indeksacji w GSC.

Wdrożenie przyjaznych adresów to połączenie zmian w panelu i bezbłędnych reguł na serwerze. Kiedy oba elementy są spójne, sklep korzysta z lepszej indeksacji i przejrzystej nawigacji. Starannie zaplanuj wzorce, przygotuj przekierowania, aktualizuj pliki pomocnicze i regularnie testuj całość po każdej zmianie, zarówno funkcjonalnej, jak i kontentowej.

< Powrót

Zapisz się do newslettera


Zadzwoń Napisz