Ostatnia aktualizacja: czerwiec 2026.

Stan magazynowy produktu spada do zera. Przed Tobą pojawiają się dwie opcje: ukryć stronę w katalogu albo zostawić ją widoczną z oznaczeniem „brak w magazynie”. Sprzedawcy spierają się o to tak, jakby była to jedna decyzja z jedną poprawną odpowiedzią. Nie jest. To dwa osobne pytania przebrane za jedno — czy strona ma pozostać dostępna dla wyszukiwarek oraz czy ma pozostać widoczna podczas przeglądania sklepu — a PrestaShop pozwala odpowiedzieć na nie niezależnie. Jeśli je pomylisz, albo tracisz ruch organiczny, na który pracowałeś latami, albo zaśmiecasz strony kategorii ślepymi zaułkami. Ten poradnik dotyczy właśnie tego rozdroża: co w praktyce oznacza ukrywanie w PrestaShop, co daje pozostawienie produktu widocznego i które rzeczywiste ustawienia platformy kontrolują każdy z tych efektów.

Najpierw jedna granica, żeby temat pozostał precyzyjny: decyzja, czy produkty bez stanu magazynowego nadal powinny być możliwe do zamówienia — jako zamówienia oczekujące na dostawę i przedsprzedaż — to osobna dźwignia z własnymi konsekwencjami, opisana w artykule przedsprzedaż i zamówienia oczekujące w PrestaShop. Tutaj mówimy wyłącznie o widoczności i indeksowaniu: ukryć czy pokazać.

Co naprawdę oznacza „ukrywanie” w PrestaShop (to nie jest jedno ustawienie)

Pierwsza rzecz, która często myli sprzedawców: w rdzeniu PrestaShop nie ma jednego pola wyboru „ukryj produkty niedostępne”. „Ukrywanie” może oznaczać trzy różne stany techniczne, a każdy z nich ma zupełnie inne konsekwencje dla SEO:

  • Wyłączenie produktu (strona produktu → przełącznik Włączony albo masowe Wyłącz zaznaczone w Katalog → Produkty). Flaga produktu active zmienia się na 0. Kontroler części sklepu widocznej dla klientów (ProductController) zwraca wtedy dla tego adresu URL kod HTTP 404. Strona znika z list i z zasięgu Google — każdy link zwrotny i każda pozycja w rankingu przypisana do tej strony prowadzi teraz do martwej strony.
  • Ukrycie z list przy zachowaniu działającej strony. PrestaShop daje ręczną kontrolę Widoczność dla pojedynczego produktu (strona produktu → Opcje) z czterema stanami: Wszędzie, Tylko katalog, Tylko wyszukiwanie i Nigdzie — więc dla konkretnego SKU możesz usunąć produkt ze stron kategorii i wyszukiwarki sklepu, podczas gdy bezpośredni adres URL nadal pozostaje dostępny i możliwy do indeksowania. Rdzeń PrestaShop nie ma natomiast automatycznego filtra list produktów niedostępnych, który stosowałby takie zachowanie w całym katalogu wraz ze zmianą stanów magazynowych; zrobienie tego na podstawie poziomu zapasów wymaga modułu albo nadpisania, które filtruje listę produktów, zostawiając każdy adres URL aktywny.
  • Całkowite usunięcie z mapy adresów URL (skasowanie albo przekierowanie 301). Właściwe tylko przy trwałym wycofaniu produktu — i nawet wtedy prawie nigdy jako zwykłe usunięcie, jeśli strona ma jakikolwiek ruch.

I co z tego? Gdy ktoś mówi „ukryłem niedostępny produkt”, zwykle tak naprawdę go wyłączył — i po cichu zamienił zasób budujący pozycje w Google w błąd 404. To kosztowny domyślny odruch, w który łatwo wpaść, jeśli nie widzi się różnicy między tymi trzema stanami.

Argument za pozostawieniem strony widocznej: to zasób, nie obciążenie

Najmocniejszy powód, by zostawić stronę produktu niedostępnego aktywną, jest prosty: ona już dla Ciebie pracuje. Jeśli strona pozycjonuje się na określone zapytanie, ma linki zwrotne albo znajduje się w zakładkach klientów, ta wartość wyparowuje w chwili, gdy adres URL zaczyna zwracać 404. Miesiące — czasem lata — zbudowanego autorytetu znikają przez tymczasową przerwę w dostawie.

Wytyczne Google są tutaj jednoznaczne: zostaw stronę produktu aktywną i sygnalizuj status za pomocą danych strukturalnych (availability: OutOfStock w schemacie Product), zamiast usuwać stronę. Aktywna, poprawnie oznaczona strona mówi robotowi „ten produkt istnieje, jest tylko tymczasowo niedostępny” — co zachowuje pozycje i pozwala szybko wrócić do normalności po uzupełnieniu stanu. 404 mówi robotowi „to nigdy nie istniało; usuń”. Odzyskanie utraconej strony po ponownym zatowarowaniu może zająć tygodnie ponownego crawlowania i odbudowy pozycji, których nie trzeba było tracić.

Widoczna strona przechwytuje też popyt, zamiast go wyrzucać:

  • Zapisy na powiadomienie o powrocie produktu zmieniają rozczarowanego odwiedzającego w zainteresowanego potencjalnego klienta. PrestaShop dostarcza moduł „Mail alerts” (ps_emailalerts), którego część widoczna dla klientów dodaje formularz „Powiadom mnie, gdy produkt będzie dostępny” na stronach produktów niedostępnych — włącz opcję Dostępność produktu w konfiguracji modułu w panelu administracyjnym. Każdy zapis to jednocześnie gotowy do kontaktu kupujący na dzień uzupełnienia stanu i twardy sygnał popytu dla Twoich obliczeń dotyczących ponownego zamówienia (mechanikę zamiany tego sygnału w punkt ponownego zamówienia opisujemy w artykule kiedy ponownie zamawiać towar).
  • Odkrywanie produktów i listy życzeń. Część klientów przegląda ofertę, żeby planować, nie żeby kupić od razu. Produkt znaleziony dziś może stać się zakupem, gdy wróci do sprzedaży — co jest niemożliwe, jeśli strona nigdy się nie pojawia.
  • Linki wewnętrzne pozostają nienaruszone. Artykuły blogowe, strony porównań i bloki produktów powiązanych, które prowadzą do produktu, nadal działają, zamiast wysyłać czytelników na 404.

Argument za ukrywaniem: czyste strony kategorii lepiej konwertują

Kontrargument jest równie realny i dotyczy raczej doświadczenia przeglądania niż wyszukiwania. Kategoria z 40 produktami, z których 15 jest niedostępnych, zmusza klienta do przedzierania się przez ślepe zaułki, zanim znajdzie coś, co może kupić. Każda etykieta „brak w magazynie” to małe rozczarowanie, a gdy jest ich zbyt dużo, sklep zaczyna wyglądać na źle prowadzony — „czy oni jeszcze działają? Czy wszystko mają wyprzedane?”

Dlatego uczciwa odpowiedź rzadko brzmi „ukryj adres URL”. Zwykle brzmi: „zostaw stronę dostępną dla wyszukiwarek, ale przestań zaśmiecać ścieżkę przeglądania produktami niedostępnymi” — przenieś je na koniec sortowania kategorii albo odfiltruj z list, podczas gdy kanoniczny adres URL pozostaje dostępny dla robotów. Otrzymujesz czystszą stronę kategorii i zachowujesz zasób SEO. Te dwa cele wchodzą w konflikt tylko wtedy, gdy traktujesz „ukryj” jako brutalne wszystko albo nic, czyli wyłączenie produktu.

Ukryć czy zostawić widoczne: szybka decyzja

SytuacjaLista kategoriiAdres URL produktuDlaczego
Tymczasowy brak towaru, spodziewana dostawaZostaw widoczne (sortuj na końcu) albo odfiltruj z listyZostaw aktywny, schemat OutOfStock, „powiadom mnie”Zachowuje pozycje + przechwytuje popyt; szybko wraca po uzupełnieniu stanu
Produkt sezonowy, poza sezonemZostaw widoczne z komunikatem sezonowymZostaw aktywny i indeksowalny przez cały rokPrzechwytuje ruch z wyszukiwania poza sezonem i wczesny popyt
Produkt wycofany, strona ma ruch/linkiUsuń z listyZostaw aktywny, oznacz jako wycofany, zaproponuj alternatywyUtrzymuje wartość SEO, jednocześnie przekierowując intencję zakupową
Produkt wycofany, bez istotnego ruchuUsuńPrzekierowanie 301 do najbliższego produktu/kategoriiPrzenosi moc linków dalej; unika osieroconego 404
Nigdy nie wyłączaj strony, która ma linki zwrotne albo ruch organiczny, bez wcześniejszego przekierowania.

Ustawienia PrestaShop, które naprawdę tym sterują

Strona Ustawienia produktów PrestaShop z opcjami wyświetlania dostępnych i niedostępnych ilości na stronie produktu
Natywna strona Ustawienia produktów kontroluje sposób, w jaki dostępne i niedostępne produkty pojawiają się w twoim sklepie.

Tutaj abstrakcyjna decyzja spotyka się z realnym panelem administracyjnym. Są cztery dźwignie i warto dokładnie wiedzieć, za co odpowiada każda z nich.

1. Globalne zachowanie przy braku towaru

Przejdź do Parametry sklepu → Ustawienia produktów i znajdź blok Stan produktów. Kontrolka opisana jako „Dozwolone działania, gdy produktu nie ma w magazynie” zapisuje wartość konfiguracyjną PS_ORDER_OUT_OF_STOCK i ustawia domyślne zachowanie dla każdego produktu: Odmów zamówień (produkt pozostaje widoczny, ale przycisk dodania do koszyka jest wyłączony) albo Zezwól na zamówienia (dozwolone zamówienia oczekujące). Zwróć uwagę, czego to nie robi — niczego nie ukrywa. Domyślnie produkt, którego nie można zamówić, nadal jest wyświetlany na listach; po prostu nie da się go kupić. To zaskakuje osoby, które oczekują, że „odmów zamówień” wyczyści strony kategorii.

2. Nadpisanie dla konkretnego produktu

Na dowolnym produkcie karta Ilości zawiera wybór „Gdy brak w magazynie” z trzema opcjami: Odmów zamówień, Zezwól na zamówienia i Użyj domyślnego zachowania (czyli odziedzicz ustawienie globalne powyżej). Wartość ta jest przechowywana w tabeli ps_stock_available, w kolumnie out_of_stock. Używaj jej do wyjątków — tego jednego delikatnego SKU, którego nigdy nie chcesz sprzedać ponad stan, mimo że domyślnie sklep pozwala na zamówienia oczekujące, albo odwrotnie.

3. Etykiety dostępności, które klienci naprawdę czytają

Nadal na karcie Ilości, pola „Dostępność”Etykieta, gdy produkt jest dostępny i Etykieta, gdy brak w magazynie (wartości produktu available_now / available_later) — kontrolują dokładne brzmienie tekstu w części sklepu widocznej dla klientów. To najtańsza dźwignia konwersji na stronie produktu niedostępnego: „Tymczasowo niedostępny” brzmi zupełnie inaczej niż „Ponownie dostępny w połowie marca”. Jeśli możesz podać datę, podaj ją; konkretna data uzupełnienia stanu konwertuje zapis „powiadom mnie” znacznie lepiej niż cisza. Globalne wartości domyślne tych etykiet również znajdują się w Parametry sklepu → Ustawienia produktów.

4. Znaczniki schema, żeby Google pokazywał właściwy status

Domyślny motyw PrestaShop emituje dane strukturalne Product, ale to, czy właściwość availability poprawnie zmienia się na OutOfStock — i pozostaje poprawna przy zmianach stanu magazynowego — zależy od motywu i wersji, więc warto sprawdzić to w teście wyników z elementami rozszerzonymi Google, zamiast zakładać, że wszystko działa. Jeśli Twój motyw nie emituje czystego, zgodnego ze statusem schematu Product, lukę wypełni dedykowany moduł SEO zarządzający danymi strukturalnymi; nasz Smart SEO Revolution Suite obsługuje schemat Product (w tym stan dostępności), dzięki czemu strony produktów niedostępnych nadal wysyłają właściwe sygnały do wyszukiwarek, zamiast tracić pozycje podczas przerwy w dostępności. Korzyść jest konkretna: gdy towar wraca, strona nadal jest zaindeksowana i ma pozycje, a nie czeka w kolejce na ponowne przeskanowanie.

Sprawdzasz wartość availability wewnątrz JSON-LD produktu. Na stronie produktu niedostępnego powinna wyglądać tak — adres URL wskazuje słownik schema.org i to jedyna część, która zmienia się wraz ze stanem magazynowym:

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Linear Shower Drain 60cm",
  "sku": "LSD-60-BS",
  "offers": {
    "@type": "Offer",
    "priceCurrency": "EUR",
    "price": "89.00",
    "availability": "https://schema.org/OutOfStock"
  }
}

Gdy produkt wróci na stan, ta sama właściwość ma wartość https://schema.org/InStock. Strona, która zwraca 404, nie emituje żadnego schematu — i właśnie o to chodzi: aktywna, poprawnie oznaczona strona nadal mówi Google, że produkt istnieje i jest tylko chwilowo niedostępny, podczas gdy martwa strona mówi, żeby zapomnieć, że produkt kiedykolwiek istniał.

Czysta polityka, którą da się faktycznie stosować

Przełóż wszystko powyżej na regułę domyślną i wyjątki, żeby nie podejmować tej decyzji od nowa przy każdym produkcie:

  • Domyślnie: produkty niedostępne pozostają włączone (adres URL aktywny, indeksowalny, schemat OutOfStock), z ustawieniem odmów zamówień, formularzem „powiadom mnie” i etykietą dostępności zawierającą konkretną datę. Sortuj je na końcu stron kategorii, żeby przeglądanie pozostało czyste.
  • Wyjątek — wycofany produkt z ruchem: zostaw stronę, zmień komunikat na „wycofany”, linkuj do naturalnego zamiennika.
  • Wyjątek — wycofany produkt bez ruchu: przekieruj adres URL kodem 301 do najbliższego aktywnego produktu albo kategorii. Nigdy nie zostawiaj go jako zwykłego 404.
  • Wyjątek — chroniczny bałagan: jeśli kategoria rzeczywiście tonie w produktach niedostępnych, odfiltruj je z listy, ale zostaw adresy URL aktywne — nie wyłączaj produktów.

Cała ta polityka opiera się na tym, żeby przede wszystkim nie kończyć towaru z zaskoczenia. Zarządzanie produktami niedostępnymi to kontrola szkód; dyscyplina ponownych zamówień to prewencja. Jeśli braki magazynowe są tak częste, że ta strona staje się codzienną decyzją, problem leży wcześniej — zobacz zarządzanie magazynem w małych sklepach internetowych, jeśli ręczne śledzenie przestaje się skalować, oraz kiedy ponownie zamawiać towar, gdzie pokazujemy formuły uruchamiające zamówienie zakupu, zanim półka się opróżni.

Przetestuj to na własnym katalogu, nie ufaj ogólnej zasadzie z bloga

Nie ma jednej uniwersalnej poprawnej odpowiedzi, a każdy, kto ją podaje, nie widział Twoich danych. Sklep z częstymi tymczasowymi brakami i lojalnymi klientami powracającymi mocno zyskuje na widocznych stronach „powiadom mnie”. Sklep z rzadkimi brakami i szybkimi dostawami zyskuje niewiele na pokazywaniu produktów niedostępnych, a może konwertować lepiej po ich odfiltrowaniu. Dlatego mierz we własnym sklepie: zapisz współczynnik konwersji strony kategorii i przychody przez 30 dni z produktami niedostępnymi posortowanymi na końcu i widocznymi, potem przez 30 dni z produktami odfiltrowanymi z list (adresy URL nadal aktywne) i porównaj wyniki. Daj każdemu wariantowi wystarczająco dużo czasu — co najmniej 30 dni i dość zamówień, żeby zobaczyć trend, a nie tygodniowy szum — zanim wyciągniesz wnioski. Właściwa polityka to ta, którą wybiorą Twoje dane, zastosowana przez cztery opisane wyżej dźwignie PrestaShop, a nie przez jeden tępy przycisk „wyłącz”, po który wielu sprzedawców sięga przez pomyłkę.

Najczęściej zadawane pytania

Czy ustawienie „Odmów zamówień” ukrywa produkt ze stron kategorii?

Nie — i to najczęstsze nieporozumienie. „Odmów zamówień” (ustawienie PS_ORDER_OUT_OF_STOCK w Parametry sklepu → Ustawienia produktów) tylko wyłącza przycisk dodania do koszyka. Produkt nadal jest wyświetlany, a adres URL pozostaje aktywny i możliwy do indeksowania. Jeśli chcesz usunąć go ze ścieżki przeglądania kategorii, to osobne zadanie — posortuj go na końcu albo odfiltruj z list za pomocą modułu — a nie coś, co robi ustawienie zachowania zamówień.

Czy jeśli wyłączę produkt niedostępny, Google obniży jego pozycje?

Tak, z czasem. Wyłączenie zmienia flagę produktu active na 0, a PrestaShop zwraca dla tego adresu URL kod 404. 404 mówi robotowi, że strona już nie istnieje, więc pozycje i wszystkie przypisane do niej linki zwrotne zaczynają tracić wartość. Odzyskanie usuniętej strony po uzupełnieniu stanu może zająć tygodnie ponownego crawlowania. Zamiast tego zostaw stronę aktywną ze schematem OutOfStock.

Jak najlepiej obsłużyć produkt trwale wycofany?

To zależy od tego, czy strona ma ruch. Jeśli ma pozycje albo linki zwrotne, zostaw adres URL aktywny, oznacz produkt jako wycofany i podlinkuj najbliższy zamiennik, żeby zachować wartość SEO. Jeśli nie ma istotnego ruchu, przekieruj ją kodem 301 do najbliższego aktywnego produktu albo kategorii, żeby przekazać dalej ewentualną moc linków. Zwykłe usunięcie (albo 404) prawie nigdy nie jest dobrym wyborem dla strony z historią.

Jak pozwolić klientom poprosić o powiadomienie, gdy towar wróci?

PrestaShop dostarcza moduł „Mail alerts” (ps_emailalerts); włącz jego opcję Dostępność produktu w panelu administracyjnym, a na stronach produktów niedostępnych pojawi się formularz „Powiadom mnie, gdy produkt będzie dostępny”. Każdy zapis to jednocześnie zainteresowany potencjalny klient na dzień uzupełnienia stanu i realny sygnał popytu dla Twoich obliczeń ponownego zamówienia.

Gdzie zmienić tekst „brak w magazynie”, który widzą klienci?

Na karcie Ilości każdego produktu pole Etykieta, gdy brak w magazynie (wartość produktu available_later) kontroluje dokładny tekst widoczny w części sklepu dla klientów. Konkretne „Ponownie dostępny w połowie marca” konwertuje znacznie lepiej niż ogólne „Tymczasowo niedostępny” — jeśli możesz podać datę, podaj ją. Globalne wartości domyślne tych etykiet znajdują się w Parametry sklepu → Ustawienia produktów.

Tagi: PrestaShop SEO UX
Udostępnij ten wpis:
David Miller

David Miller

Founder, mypresta.rocks

David Miller to specjalista PrestaShop z ponad dekadą praktycznego doświadczenia i założyciel mypresta.rocks — studia programistycznego z Tychów. Tworzy i utrzymuje katalog 152 modułów PrestaShop — w tym 21 pakietów „Revolution" obejmujących SEO, checkout, bezpieczeństwo, wydajność, marketing, wyszukiwanie, wsparcie i operacje magazynowe — które każdego dnia usprawniają realne sklepy, testowanych na PrestaShop 1.7.8, 8.x i 9.x. Sprawuje również opiekę nad sklepami produkcyjnymi generującymi miliony rocznego obrotu, dlatego jego pracę ocenia się po realnej sprzedaży, a nie po wersjach demo. Jego doświadczenie obejmuje pełen zakres e-commerce — wydajność, bezpieczeństwo, SEO i marketing — oraz wykracza poza PrestaShop, sięgając WooCommerce, Shopify i systemów tworzonych na zamówienie. Na blogu pisze o technicznej stronie PrestaShop: co platforma naprawdę robi pod maską, co psuje się na produkcji i które rozwiązania faktycznie się sprawdzają.

Spodobał Ci się ten artykuł?

Otrzymuj nasze najnowsze porady, przewodniki i aktualizacje modułów prosto na swoją skrzynkę.

Komentarze

Brak komentarzy. Bądź pierwszy!

Bądź pierwszy: zadaj pytanie albo podziel się przydatną opinią.

Ładowanie...
Do góry