Filtry WooCommerce nie działają: cztery objawy, cztery przyczyny
Filtry WooCommerce nie działają najczęściej dlatego, że produkty nie mają atrybutów globalnych, tylko lokalne, wpisane ręcznie w jednym produkcie. Druga częsta przyczyna to dublujące się wartości, na przykład „Czarny” i „czarny”. Rzadziej winna jest sama wtyczka filtrów albo jej pamięć podręczna. Ustal, który z czterech objawów widzisz, a przyczyna zwykle staje się jasna.
Autor: Zespół TellMyShop. Piszemy o PrestaShop na podstawie pracy z zapleczem prawdziwych sklepów i testów na własnym sklepie testowym.
Aktualizacja: · 5 min czytania
Skąd filtr bierze dane
Filtr w sklepie pokazuje wartości atrybutów, czyli cech takich jak kolor, rozmiar czy materiał. WooCommerce ma dwa rodzaje atrybutów i to od nich zależy, czy filtr cokolwiek zobaczy.
| Atrybut globalny | Atrybut lokalny (własny produktu) | |
|---|---|---|
| Gdzie powstaje | Produkty, Atrybuty | w karcie jednego produktu, zakładka Atrybuty |
| Wartości | wspólna lista dla całego sklepu | wpisane ręcznie, tylko w tym produkcie |
| Widzi go filtr | tak | zwykle nie |
| Ryzyko literówek | małe, wybierasz z listy | duże, każdy wpis od nowa |
| Do wariantów | tak | tak, ale bez filtrowania |
Dokumentacja WooCommerce o kategoriach, tagach i atrybutach wyjaśnia, że atrybuty służą do filtrowania produktów i budowania wariantów. Dokumentacja bloku filtrów atrybutów z rozszerzenia wyszukiwarki mówi jeszcze wyraźniej: blok filtra atrybutów obsługuje wyłącznie atrybuty globalne.
Objaw 1: filtr nie pokazuje żadnych produktów
Klient klika „Czerwony” i widzi pustą listę, choć czerwone produkty są w sklepie.
Przyczyna: czerwone produkty mają kolor wpisany jako atrybut lokalny albo w opisie, a nie jako wartość atrybutu globalnego. Filtr szuka produktów przypisanych do wartości „Czerwony” na liście globalnej i żadnego nie znajduje.
Sprawdź w karcie jednego z tych produktów, zakładka Atrybuty. Atrybut globalny ma nazwę z listy i wartości wybierane z rozwijanej listy. Lokalny ma pole tekstowe z wartościami rozdzielonymi pionową kreską.
Objaw 2: w filtrze brakuje wartości albo całego atrybutu
Masz pięć kolorów, a filtr pokazuje trzy. Albo nie ma w ogóle filtra rozmiaru.
Przyczyny są zwykle trzy. Część produktów ma atrybut lokalny zamiast globalnego. Wartość istnieje na liście, ale żaden opublikowany produkt w magazynie jej nie ma, więc filtr ją chowa. Albo w bloku filtra wybrano tylko jeden atrybut. Bloki filtrów w motywach blokowych ustawiasz w Wygląd, Edytor, w szablonie katalogu, a ich działanie opisuje dokumentacja bloku filtrów produktów.
Objaw 3: te same wartości się dublują
W filtrze widać „Czarny”, „czarny” i „Czarna”. Albo „XL” i „xl”. Każda wartość prowadzi do innej części produktów.
Przyczyna: import z kilku plików albo ręczne dopisywanie wartości. Dla WooCommerce to osobne wartości. Rozwiązanie to wybrać jedną, przypisać do niej wszystkie produkty i dopiero potem usunąć pustą. Kolejność ma znaczenie, bo usunięcie wartości z produktami odpina ją od nich.
Przy imporcie z pliku CSV łatwo też stworzyć atrybut lokalny zamiast globalnego. Jak tego uniknąć, opisuje poradnik Barn2 o imporcie atrybutów.
Objaw 4: filtr pokazuje złe albo stare wyniki
Filtr pokazuje produkt, którego nie powinien, wyprzedany rozmiar albo stan sprzed kilku dni.
Przyczyny są techniczne:
- pamięć podręczna wtyczki cache albo samej wtyczki filtrów,
- tabela pomocnicza atrybutów WooCommerce, która po imporcie nie nadąża za zmianami; w nowszych wersjach odbudujesz ją w WooCommerce, Status, Narzędzia,
- wtyczka filtrów, która patrzy na atrybuty produktu, a nie na stan konkretnego wariantu,
- konflikt dwóch wtyczek filtrów albo wtyczki filtrów z wtyczką wyszukiwarki.
Tu decydują ustawienia wtyczki filtrów i jej dokumentacja. Przegląd wbudowanych bloków filtrów i ich ograniczeń daje też zestawienie Themeisle.
Atrybut do filtrów, do opisu czy do wariantów
Przy każdym atrybucie w karcie produktu są dwa pola wyboru i oba wpływają na to, co widzi klient.
„Widoczne na stronie produktu” pokazuje atrybut w zakładce informacji dodatkowych. Nie wpływa na filtr, ale pomaga klientowi porównać produkty.
„Używane do wariantów” robi z atrybutu podstawę wariantów, na przykład rozmiarów bluzy. Taki atrybut nadal może działać w filtrze, jeśli jest globalny. Wtedy jednak filtr i stan magazynowy zaczynają od siebie zależeć: produkt z wyprzedanym XL może się pokazywać po wybraniu XL, zależnie od wtyczki filtrów.
Dobra zasada: cechy, po których klienci wybierają produkty, czyli kolor, rozmiar, materiał czy marka, trzymaj jako atrybuty globalne. Rzeczy opisowe, które dotyczą jednego produktu, mogą zostać lokalne albo trafić do opisu. Kategorie i tagi zostaw na grupy produktów, a nie na kolory i rozmiary.
Jak uporządkować atrybuty krok po kroku
Kolejność, która chroni przed utratą danych:
- Zrób listę atrybutów globalnych w Produkty, Atrybuty i ich wartości.
- Znajdź produkty z atrybutami lokalnymi, które powinny być globalne.
- Znajdź dublujące się wartości i wybierz, która zostaje.
- Przypisz produkty do właściwych wartości globalnych, zacznij od jednej kategorii.
- Sprawdź filtr na tej kategorii w oknie prywatnym przeglądarki.
- Usuń puste duplikaty wartości.
- Wyczyść cache i sprawdź filtry w kolejnych kategoriach.
Przy kilku produktach zrobisz to w panelu. Przy kilkuset to wiele wieczorów otwierania produkt po produkcie.
Jak pomaga Claude
Wtyczka TellMyShop dla WordPress i WooCommerce czyta listę atrybutów i ich wartości oraz dane produktów już w darmowej wersji TellMyShop Free. Claude znajdzie produkty bez atrybutów, z atrybutami lokalnymi zamiast globalnych i z dublującymi się wartościami, a potem przygotuje plan porządków.
W TellMyShop Pro Claude ustawia atrybuty produktów od razu po aktywacji licencji, bez przełączników, paczkami do 50 produktów. Każda paczka ma podgląd, zapis następuje po twojej zgodzie, a historia zmian pozwala cofnąć większość zmian. Przykład rozmowy, wartości są przykładowe:
Filtr koloru w kategorii Kurtki pokazuje tylko część produktów. Sprawdź dlaczego.
W kategorii Kurtki są 64 produkty. 41 ma globalny atrybut Kolor. 18 ma kolor wpisany jako atrybut lokalny, więc filtr ich nie widzi. 5 nie ma koloru wcale. Do tego w atrybucie Kolor są dwie wartości „Czarny” i „czarny”.
Przenieś te 18 na atrybut globalny i połącz czarne.
Podgląd pierwszych 2 z 18:
Kurtka puchowa Tatra
było: Kolor (lokalny): czarna
będzie: Kolor (globalny): Czarny
Kurtka softshell Gorce
było: Kolor (lokalny): granat
będzie: Kolor (globalny): Granatowy
Dla 7 produktów z wartością „czarny” zmienię ją na „Czarny”. Pięć produktów bez koloru: podaj kolory albo pominę je. Zapiszę po twoim „tak”.
Claude nie zgaduje koloru ani rozmiaru z nazwy, jeśli nie jest pewien. Brakujące dane zbiera w jednym pytaniu. Nie naprawia też wtyczki filtrów ani jej ustawień. Jeśli po uporządkowaniu atrybutów filtr dalej pokazuje złe wyniki, problem leży w samej wtyczce i trzeba go zgłosić jej autorowi albo osobie, która opiekuje się stroną.
Dobre filtry to połowa pracy nad kategorią. Drugą połowę opisuje tekst o opisach kategorii WooCommerce. Jeśli klienci zamiast filtrów używają wyszukiwarki, zobacz, co zrobić, gdy wyszukiwarka WooCommerce nie znajduje produktów. Więcej o wtyczce jest na stronie TellMyShop dla WordPress i WooCommerce, ceny w cenniku, a wszystkie poradniki na blogu.
Pytania i odpowiedzi
Czym różni się atrybut globalny od lokalnego w WooCommerce?
Atrybut globalny tworzysz raz w Produkty, Atrybuty i wybierasz jego wartości przy wielu produktach. Atrybut lokalny wpisujesz ręcznie w jednym produkcie i istnieje tylko tam. Filtry sklepu działają na atrybutach globalnych, lokalnych zwykle nie widzą.
Dlaczego w filtrze mam „Czarny” i „czarny” jako dwie wartości?
Bo to dwie różne wartości atrybutu, zwykle po imporcie z dwóch plików albo ręcznym dopisywaniu. Filtr pokazuje każdą osobno, a klient widzi tylko część produktów. Trzeba przypisać produkty do jednej wartości, a drugą usunąć, gdy jest już pusta.
Filtr pokazuje rozmiar, którego nie ma w magazynie. Czy to błąd?
Zależy od ustawień i wtyczki filtrów. Część filtrów patrzy na atrybuty produktu, a nie na stan konkretnego wariantu, więc pokazuje produkt także wtedy, gdy wybrany rozmiar jest wyprzedany. Sprawdź ustawienia wtyczki filtrów i stany wariantów.
Czy TellMyShop naprawi moją wtyczkę filtrów?
Nie w tym zadaniu. Claude sprawdza i poprawia dane, na których filtry pracują: atrybuty produktów, ich wartości i braki. Ustawienia samej wtyczki filtrów, jej wygląd i błędy w kodzie zostają po stronie autora wtyczki albo osoby, która opiekuje się stroną.
Ile produktów Claude poprawi naraz?
W TellMyShop Pro atrybuty ustawia się paczkami do 50 produktów. Przed większą pracą Claude sprawdza, czy zmieści się w godzinnych limitach ustawionych w panelu wtyczki, i proponuje etapy, jeśli nie.
WordPress jest znakiem towarowym WordPress Foundation. WooCommerce jest znakiem towarowym Automattic Inc. Claude jest znakiem towarowym Anthropic. TellMyShop nie jest powiązany z żadnym z tych podmiotów.