PrestaShop Administracja i produktywność

Kontrola Martwych Linków PrestaShop 8 i 9: Uszkodzone Linki i Brakujące Obrazy

Znajdź martwe linki i uszkodzone obrazy przed swoimi klientami

Moduł przechodzi przez opisy produktów, kategorie, strony CMS, marki, dostawców i sklepy stacjonarne, wyodrębnia każdy link i każdy obraz, a następnie sprawdza ich kod HTTP. Kontroluje także fizyczną obecność plików graficznych na dysku, czego front nigdy nie sygnalizuje. Zgodny z PrestaShop 8 i 9, multisklep, 5 języków.

W skrócie
  • Linki i obrazy analizowane w produktach, kategoriach, stronach CMS, markach, u dostawców i w sklepach stacjonarnych
  • Równoległa weryfikacja HTTP przez curl_multi, metodą HEAD, a następnie GET, gdy zdalny serwer odrzuca HEAD
  • Kontrola na dysku plików graficznych produktów, kategorii, marek, dostawców oraz plików załączonych
  • Skanowanie partiami sterowane przez AJAX: bez timeoutu PHP, przerwane skanowanie wznawia się w miejscu zatrzymania
  • Każdy uszkodzony adres URL jest powiązany z treściami, które go używają, z przyciskiem bezpośredniej edycji
PrestaShop 8 i 9 PHP 7.4+ Multisklep 5 języków Bez Composera
  • Zwrot w 30 dni
  • 12 miesięcy aktualizacji
  • Wsparcie 24 h
www.datafirefly.com/pl/
Raport martwych linków i brakujących obrazów w zapleczu PrestaShop
v1.0.0 · zaktualizowano 2026-07-27
Co robi

W skrócie.

01

Dwa rodzaje uszkodzeń, dwie metody

Linki i obrazy zwracające 404, 410, 500 lub przekraczające limit czasu są wykrywane żądaniem HTTP. Pliki graficzne wskazane w bazie, ale nieobecne na dysku, są wykrywane przez odczyt systemu plików: front pokazuje je jako uszkodzony obraz, nie zwracając żadnego użytecznego błędu.

02

Równoległa weryfikacja HTTP

curl_multi odpytuje kilka adresów jednocześnie, najpierw metodą HEAD, potem GET, gdy zdalny serwer odrzuca metodę HEAD. Liczba równoległych żądań, limit oczekiwania, limit połączenia i user-agent są regulowane.

03

Skanowanie partiami, bez timeoutu

Skanowanie postępuje w kilkusekundowych porcjach sterowanych przez AJAX, z kursorem zapisywanym w bazie. Katalog z kilkudziesięcioma tysiącami adresów przechodzi bez ruszania max_execution_time, a przerwane skanowanie wznawia się tam, gdzie się zatrzymało.

04

Od uszkodzonego adresu do treści do poprawy

Każdy adres URL jest powiązany z listą treści, które go używają: typ źródła, nazwa elementu, pole, język i tekst kotwicy. Przycisk otwiera bezpośrednio kartę produktu, kategorię lub stronę CMS w trybie edycji.

05

Deduplikacja adresów URL

Adres występujący 400 razy w katalogu jest testowany tylko raz, a wszystkie 400 miejsc pozostaje na liście. Link ze stopki powielony wszędzie nie wysadza czasu skanowania.

06

Lista wykluczeń

Zwykły tekst, symbole wieloznaczne lub wyrażenia regularne, jeden wzorzec na linię. Domeny partnerów blokujące roboty, adresy środowiska testowego i linki w trakcie migracji znikają z wyników.

Wersja pełna

Wszystko, co warto wiedzieć, zanim zainstalujesz.

Szczegółowe spojrzenie na to, jak działa Kontrola Martwych Linków PrestaShop 8 i 9: Uszkodzone Linki i Brakujące Obrazy, dlaczego zbudowaliśmy go w ten sposób i jaka myśl stoi za powyższymi funkcjami.

§ 01

Martwy link kosztuje dwa razy

Kosztuje pierwszy raz w SEO: Google podąża za linkami z Twoich opisów, a opis produktu prowadzący do trzech błędów 404 wysyła sygnał zaniedbanej treści. Kosztuje drugi raz w konwersji, gdy klient klika tabelę rozmiarów z karty produktu i trafia na stronę błędu dokładnie w chwili wahania. Problem w tym, że te linki nie psują się w dniu, w którym je piszesz. Psują się pół roku później, gdy partner przebudowuje swoją witrynę albo strona CMS zmienia nazwę, i nikt tego nie zauważa.

§ 02

Dwa różne problemy, dwie metody wykrywania

Martwy link wykrywa się żądaniem HTTP: moduł wywołuje adres i odczytuje kod odpowiedzi. Brakującego pliku graficznego tak się nie wykryje. Gdy obraz produktu jest wskazany w tabeli image, ale plik zniknął z katalogu img/p, żądanie HTTP może spokojnie zwrócić stronę zastępczą z kodem 200. Dlatego moduł czyta bezpośrednio system plików dla każdego obrazu produktu, kategorii, marki, dostawcy i sklepu stacjonarnego, a także dla plików załączonych. To jedyny sposób, aby znaleźć obrazy wyświetlające się jako pusty prostokąt, o których logi milczą.

§ 03

Co moduł czyta w Twoim katalogu

Opisy i opisy skrócone produktów, komunikaty o dostępności, opisy kategorii i kategorii CMS, treść stron CMS, opisy marek, dostawców i sklepów stacjonarnych oraz bloki linków w stopce obsługiwane przez ps_linklist. W każdym z tych pól wyodrębnia linki a href, obrazy img src wraz z ich wariantami lazy loading i atrybutami srcset, a także znaczniki source, video, audio, iframe, embed, object, link i script oraz obrazy tła zadeklarowane w stylu inline. Adresy mailto, tel, same kotwice i data URI są odrzucane z góry, podobnie jak pozostałości Smarty czy shortcodeów, które czasem zostają w skopiowanym opisie.

§ 04

Jak skanowanie radzi sobie z dużym katalogiem

Skanowanie przebiega w dwóch fazach. Zbieranie przechodzi przez treści i wyodrębnia adresy URL. Weryfikacja je odpytuje. Każda faza postępuje partiami po kilka sekund, sterowanymi przez AJAX z poziomu przeglądarki, z kursorem zapisywanym w bazie po każdej partii. Nic nie zależy od max_execution_time, a zamknięcie karty w trakcie nie kasuje wykonanej pracy. Resztę załatwiają dwie optymalizacje: adresy są deduplikowane odciskiem na czas skanowania, więc adres występujący 400 razy jest testowany raz, a lokalne adresy prowadzące do pliku statycznego obecnego na dysku są walidowane odczytem systemu plików, bez żadnego żądania sieciowego.

§ 05

Od wyniku do poprawki

Tabela wyników posortowana według wagi problemu wymienia każdy adres z jego statusem, kodem HTTP, komunikatem błędu, ewentualnym celem przekierowania i liczbą użyć. Rozwinięcie wiersza pokazuje listę miejsc wystąpienia: typ źródła, nazwę elementu, pole, język i tekst kotwicy. Każde miejsce ma swój przycisk edycji, który otwiera kartę produktu, kategorię lub stronę CMS we właściwym miejscu. Możesz też zweryfikować ponownie pojedynczy adres po poprawce, bez wznawiania pełnego skanowania.

§ 06

Co oznaczają statusy

Status poprawny obejmuje odpowiedzi 2xx i pliki lokalne obecne na dysku. Ostrzeżenie obejmuje przekierowania, kody 401 i 403 oraz 429 z ograniczania przepustowości: zasób istnieje, ale coś zasługuje na spojrzenie. Status martwy obejmuje 404, 410, pozostałe 4xx, 5xx, przekroczone limity czasu, błędy DNS i odrzucone połączenia. Statusy ignorowany i niesprawdzony odpowiadają Twoim wykluczeniom i kategoriom adresów wyłączonym w ustawieniach.

§ 07

Wyklucz to, co nie powinno się pojawiać

Wiele domen odpowiada robotom kodem 403, choć link wcale nie jest uszkodzony, zwłaszcza za zaporą aplikacyjną. Moduł klasyfikuje je już jako ostrzeżenie, a nie martwy link, ale możesz pójść dalej z listą wykluczeń: jeden wzorzec na linię, w zwykłym tekście dla dopasowania po podłańcuchu, z symbolami wieloznacznymi albo jako wyrażenie regularne z prefiksem. Adres można też dodać do listy ignorowanych jednym kliknięciem z tabeli, co usunie go z wyników kolejnych skanowań.

§ 08

Instalacja i deinstalacja

Żadnych zewnętrznych zależności, żadnego Composera, żadnej modyfikacji motywu. Wgraj plik ZIP przez menedżera modułów i zainstaluj: powstają cztery tabele, a pod Katalogiem pojawia się zakładka. Moduł nie dodaje żadnego hooka na froncie i nie dotyka wyglądu sklepu, pracuje wyłącznie z poziomu zaplecza. Przy deinstalacji cztery tabele, zakładka i konfiguracja są usuwane.