Kategoria, w której nie ma czego kupić
Menu ją oferuje, wyszukiwarka ją rankuje, a w środku wszystko jest usunięte albo niedostępne. Odwiedzający trafia w ślepy zaułek w Twoich barwach.
Objaw
Kategoria jest w menu, w filtrze na boku i w mapie strony. Odwiedzający w nią klika i dostaje „Nie znaleziono produktów spełniających kryteria” — albo, częściej, pełną stronę produktów, z których każdy mówi Niedostępny.
Obie wersje wyglądają z panelu tak samo, bo kategoria wciąż raportuje liczbę produktów. WooCommerce liczy produkty przypisane do terminu; nie liczy tych, które klient może kupić.
Ile to kosztuje
Pusta kategoria to ślepy zaułek, do którego zapłaciłeś za wysłanie ludzi:
- Zwykle jest to najgłębszy punkt, do jakiego odwiedzający dojdzie. Menu, kategoria, nic. Na tej stronie nie ma następnego kliknięcia, więc sesja się tam kończy.
- Rankuje i rankuje dalej. Strony kategorii zbierają linki i historię, więc pusta potrafi wyprzedzić produkty, które odpowiedziałyby na zapytanie.
- Reklamuje porzucenie. Trzy puste kategorie mówią osobie, która jest tu pierwszy raz, więcej o tym, czy sklep nadal handluje, niż jakikolwiek znaczek zaufania.
Wersja „wszystko niedostępne” jest droższa z tych dwóch, bo odwiedzający przewija całą stronę, zanim się dowie.
Jak to sprawdzić samodzielnie
Terminy bez żadnego opublikowanego produktu:
wp db query "SELECT t.name, tt.count FROM wp_terms t \
JOIN wp_term_taxonomy tt ON tt.term_id = t.term_id \
WHERE tt.taxonomy = 'product_cat' AND tt.count = 0"
Wersja ze stanami potrzebuje jeszcze strony produktowej — każdy opublikowany produkt w terminie,
którego _stock_status nie jest instock:
wp db query "SELECT t.name, COUNT(*) AS niedostepne FROM wp_terms t \
JOIN wp_term_taxonomy tt ON tt.term_id = t.term_id \
JOIN wp_term_relationships tr ON tr.term_taxonomy_id = tt.term_taxonomy_id \
JOIN wp_posts p ON p.ID = tr.object_id AND p.post_status = 'publish' \
JOIN wp_postmeta m ON m.post_id = p.ID AND m.meta_key = '_stock_status' \
WHERE tt.taxonomy = 'product_cat' AND m.meta_value <> 'instock' GROUP BY t.term_id"
Porównaj wynik z tt.count dla tego samego terminu: równe znaczy, że nic w środku nie da się
kupić. Podmień wp_ na własny prefiks tabel.
Jak naprawić
- Zdecyduj, czy kategoria ma teraz istnieć. Jeśli linia została wycofana, usuń ją z menu i pozwól, żeby sam termin świadomie przekierowywał albo zwracał 404.
- Jeśli to stan przejściowy, zostaw kategorię, ale napisz to na niej. Opis kategorii mówiący, że nowy sezon wchodzi w marcu, jest wart więcej niż pusta siatka.
- Jeśli to problem struktury — produkty, które tam należą, trafiły gdzie indziej — napraw przypisanie, a nie kategorię.
- Menu sprawdź osobno. Usunięcie terminu nie usuwa pozycji menu, która na niego wskazuje.
Kiedy to fałszywy alarm
- Kategorie czysto strukturalne, nigdzie nie linkowane, istniejące po to, żeby grupować podkategorie. Takie są puste na własnym poziomie i tak ma być.
- Sklepy na zamówienie, gdzie brak stanu nadal znaczy „do kupienia”. Jeśli
_stock_statustoonbackorder, a Twój koszyk to przyjmuje, kategoria jest w porządku. - Kategorie sezonowe świadomie trzymane między sezonami, z wyjaśnieniem na stronie.
- Kategorie wyłączone z menu i z wyszukiwarki, używane wyłącznie jako wewnętrzna etykieta.
Jak znajduje to Merchlint
Merchlint przechodzi po każdym terminie product_cat, liczy przypisane do niego opublikowane
produkty, a potem liczy, ile z nich klient mógłby faktycznie dodać do koszyka — dostępnych,
wycenionych i widocznych w katalogu. Zgłasza dwa przypadki osobno: w kategorii nie ma nic, oraz
w kategorii nie ma nic do kupienia.
Przy każdym znalezisku widać termin, liczbę produktów i to, czy kategoria jest dziś osiągalna z menu — bo nieosiągalna pusta kategoria to porządki, a linkowana to wyciek.
Pewność: F — fakt z bazy. Terminy, powiązania i status stanu to wszystko wiersze.
Ta kontrola jest w dodatku Pro.
Coś się nie zgadza z tym, co widzisz w sklepie? Napisz — czytamy każdą wiadomość. contact@merchlint.com
Masz wynik z wtyczki i nie wiesz, od czego zacząć? Do 15 listopada 2026 przeglądamy eksporty z dziesięciu sklepów — darmowy audyt katalogu.