Jak pokazać różne filtry na różnych stronach
[woof] shortcode akceptuje atrybuty, które pozwalają kontrolować, które filtry są wyświetlane i które produkty pokazują.
Główne atrybuty:
tax_only– Pokaż tylko określone taksonomie (kategorie, atrybuty)by_only– Pokaż tylko specyficzne filtry niebędące taksonomiami (cena, SKU, stan magazynowy itp.)taxonomies– Pokaż tylko określone terminy taksonomii (używane z dynamicznym ponownym zliczaniem)
Przykłady Shortcode
Filtruj określone taksonomie
Pokaż tylko filtry kategorii i marek:
[woof tax_only="product_cat,pa_brand"]
Filtruj elementy niebędące taksonomią
Pokaż tylko filtry ceny, SKU i stanu magazynowego:
[woof by_only="by_price,by_sku,by_instock"]
Połączone: Taksonomie + Filtry niebędące taksonomią
Pokaż konkretne taksonomie I filtry nie-taksonomiczne:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price,by_instock"]
Używanie atrybutów taksonomii (dla dynamicznego przeliczania)
Pokaż tylko określone terminy z określonych taksonomii:
[woof taxonomies="product_cat:35,42,58+pa_brand:nike,adidas"]
Uwaga: The taxonomies atrybut jest używany, gdy masz włączone „dynamiczne przeliczanie” lub „ukryj puste opcje”.
Kompletny przewodnik konfiguracji
Krok 1: Utwórz swoje shortcode'y
Twórz różne [woof] shortcode'y dla każdej strony z odpowiednimi atrybutami.
Przykład:
- Dostawca A:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"] - Dostawca B:
[woof taxonomies="product_cat:50+pa_brand:nike,adidas" by_only="by_price"]
Krok 2: Umieść skróty w widżetach
- Przejdź do Wygląd → Widżety
- Dodaj Tekst lub Niestandardowy HTML widżet do swojego paska bocznego
- Wklej swój shortcode do widżetu
- Utwórz osobne widżety dla każdego shortcode
Krok 3: Zainstaluj wtyczkę Conditional Widget
Potrzebujesz wtyczki do kontrolowania widoczności widżetów w zależności od warunków strony.
Wybierz jedno:
- Widget Logic – https://wordpress.org/plugins/widget-logic/
- Pokaż widżet WordPress według logiki – https://github.com/realmag777/Show-WordPress-Widget-by-Logic
Krok 4: Ustaw Warunki Widoczności
Dodaj logikę warunkową do każdego widżetu, aby kontrolować, gdzie się pojawia.
Przykłady logiki warunkowej
Pokaż filtr na konkretnej stronie
Według slug strony:
is_page('supplier-nike')
Według ID strony:
is_page(123)
Wyświetl filtr na wielu stronach
is_page(array('supplier-1', 'supplier-2', 'supplier-3'))
Pokaż filtr na archiwalnej stronie kategorii
Według ID kategorii:
is_product_category(35)
Według sluga kategorii:
is_product_category('electronics')
Pokaż filtr dla niestandardowej taksonomii
is_tax('supplier', 'nike-products')
Wyklucz określone strony
Pokaż wszędzie Z WYJĄTKIEM strony 123:
!is_page(123)
Kompletny przykład konfiguracji
Scenariusz: 3 Dostawcy z Różnymi Filtrami
Dostawca A (Nike) – ID strony: 123
- Shortcode:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"] - Warunek widżetu:
is_page(123) - Wynik: Pokazuje wszystkie kategorie produktów z filtrami rozmiaru, koloru i ceny
Dostawca B (Adidas) – Slug strony: adidas-products
- Shortcode:
[woof taxonomies="product_cat:40,41,42" by_only="by_instock"] - Warunek widżetu:
is_page('adidas-products') - Wynik: Pokazuje tylko kategorie 40, 41, 42 z filtrem magazynowym
Dostawca C – ID Archiwum Kategorii: 50
- Shortcode:
[woof tax_only="product_cat,pa_brand" by_only="by_price,by_sku"] - Warunek widżetu:
is_product_category(50) - Wynik: Pokazuje filtry kategorii, marek, ceny i SKU
Zrozumienie atrybutów
tax_only vs taxonomies
Użyj tax_only kiedy:
- Chcesz pokazać całe taksonomie (wszystkie terminy)
- Przykład:
tax_only="product_cat,pa_brand"pokazuje wszystkie kategorie i wszystkie marki
Użyj taxonomies kiedy:
- Masz włączone „dynamiczne przeliczanie” lub „ukryj puste opcje”
- Chcesz pokazać konkretne terminy z konkretnych taksonomii
- Przykład:
taxonomies="product_cat:35,42+pa_brand:nike"pokazuje tylko kategorie 35 i 42 oraz tylko markę Nike
wg_tylko Wartości
Dostępne filtry nie-taksonomiczne dla by_only:
by_price– suwak zakresu cenby_sku– Szukaj według SKUby_text– wyszukiwanie tekstoweby_author– Filtruj według autoraby_onsales– Pokazuj tylko produkty w promocjiby_instock– Pokaż tylko produkty dostępne w magazynie- Klucze pól meta (jeśli włączone w ustawieniach WOOF)
Użyj by_only="none" aby ukryć wszystkie filtry niebędące taksonomią.
Znajdowanie identyfikatorów i slugów
ID kategorii
- Przejdź do Produkty → Kategorie
- Najedź na nazwę kategorii
- Spójrz na pasek stanu przeglądarki lub adres URL
- Znajdź
tag_ID=35– liczba to Twoje ID kategorii
Identyfikatory stron
- Przejdź do Strony
- Najedź na nazwę strony
- Spójrz na adres URL:
post=123 - Numer to identyfikator Twojej strony
Slugi atrybutów
- Przejdź do Produkty → Atrybuty
- Początek slugów atrybutów to
pa_ - Przykłady:
pa_brand,pa_size,pa_color,pa_material
Testowanie konfiguracji
- Najpierw przetestuj shortcode’y
- Umieść shortcode bezpośrednio na stronie testowej
- Sprawdź, czy filtry są poprawnie wyświetlane
- Sprawdź, czy filtrowanie działa
- Test widoczności widżetu
- Odwiedź każdą stronę, na której filtr powinien się pojawić
- Sprawdź, czy filtry wyświetlają się poprawnie
- Sprawdź, czy inne filtry nie pojawiają się
- Zweryfikuj tylko jeden filtr na stronę
- Wiele filtrów na tej samej stronie spowoduje konflikt
- Użyj warunków widżetu, aby zapewnić wyłączność
Ważne ograniczenie
Tylko jeden filtr na stronę: Tylko jeden filtr WOOF może być aktywny na stronie jednocześnie. Wiele filtrów będzie kolidować.
Rozwiązanie: Użyj logiki warunkowej widżetu, aby zapewnić wyświetlanie tylko jednego widżetu filtra na stronie.
Wskazówki
- Najpierw przetestuj shortcode bezpośrednio
- Przed dodaniem do widżetów, przetestuj shortcode na zwykłej stronie
- Zapewnia poprawność atrybutów
- Użyj wyłącznych warunków
- Upewnij się, że warunki widżetu się nie nakładają
- Na stronie powinien być widoczny tylko jeden filtr
- Warunki negatywne
- Użyj
!is_page(123)aby wykluczyć konkretne strony - Przydatne dla scenariuszy „pokaż wszędzie oprócz”
- Użyj
- Sprawdź slugi atrybutów
- Slugi atrybutów muszą zaczynać się od
pa_ - Zły slug = filtr się nie pojawi
- Slugi atrybutów muszą zaczynać się od
Pełna dokumentacja
Pełne odniesienie do atrybutów shortcode: https://products-filter.com/shortcode/woof
Rozwiązywanie problemów
Filtr nie pojawia się
Możliwe przyczyny:
- Warunek widżetu jest fałszywy dla bieżącej strony
- Nieprawidłowe atrybuty shortcode
- Identyfikatory kategorii/atrybutów nie istnieją
- Konflikt wielu filtrów
Rozwiązanie:
- Sprawdź, czy ID/slug strony odpowiada warunkowi
- Sprawdź identyfikatory kategorii w Produkty → Kategorie
- Najpierw przetestuj shortcode na zwykłej stronie
- Zapewnij tylko jeden widżet filtrujący na stronę
Nieprawidłowe wyświetlanie produktów
Możliwe przyczyny:
- Id kategorii nieprawidłowe
- Slug-i atrybutów błędne
- Używanie złego atrybutu (
tax_onlyvstaxonomies)
Rozwiązanie:
- Sprawdź ponownie ID kategorii
- Sprawdź, czy slugi atrybutów zaczynają się od
pa_ - Użyj
taxonomiesjeśli masz włączone dynamiczne przeliczanie - Najpierw przetestuj z prostszym shortcode
Wyświetlanie wielu filtrów
Przyczyna: Warunki widżetu nakładają się
Rozwiązanie:
- Przejrzyj wszystkie warunki widgetów
- Zapewnij wzajemną wyłączność
- Użyj negatywnych warunków do oddzielenia
Filtr wyświetla się na nieprawidłowych stronach
Przyczyna: Warunek widgetu zbyt szeroki
Rozwiązanie:
- Uczyń warunek bardziej szczegółowym
- Użyj identyfikatora strony zamiast kategorii, jeśli potrzebujesz
- Dokładnie przetestuj logikę warunków
Podsumowanie
Aby wyświetlać różne filtry na różnych stronach:
- Utwórz niestandardowe
[woof]shortcode ztax_onlyi/lubby_onlyatrybuty - Umieść każdy shortcode w osobnym widżecie Tekst/HTML
- Zainstaluj plugin Widget Logic
- Dodaj warunkową logikę do każdego widżetu (np.
is_page(123)) - Test, aby upewnić się, że na stronie wyświetla się tylko jeden filtr
Pamiętaj: Na stronie może być aktywny tylko jeden filtr. Użyj warunków widżetów, aby zapewnić wyłączność.