Przejdź do treści

Wtyczka FacetWP - 4.5

12,99 

  • DeweloperFacetWP
  • Wersja4.5

Na stanie

Wtyczka FacetWP - 4.5

12,99 

Produkt ten jest również dostępny w subskrypcji całej oferty:

Szybkie wsparcie
Częste aktualizacje
Sprawdzone pliki
Dożywotnie aktualizacje

FacetWP to wtyczka WordPress do filtrowania facetowego (faceted search) – wielokryterialnego zawężania archiwów, list wpisów i katalogów WooCommerce przez AJAX, z licznikami trafień i wygaszaniem opcji bez wyników. Dane pobiera z taksonomii, pól ACF i atrybutów produktów, sięgając po własną tabelę indeksu zamiast postmeta.

Typy facetów: checkboxy, suwaki ceny, mapy i wyszukiwanie

FacetWP dostarcza w rdzeniu 17 typów facetów – od checkboxów z licznikami trafień, logiką AND/OR i trybem hierarchicznym, przez wielokrotne listy fSelect z wbudowaną wyszukiwarką, suwaki zakresu i filtry dat, po facet Map z pinezkami wyników i filtr Proximity operujący w zadanym promieniu od wskazanego punktu. Kolejnych sześć typów – Range List, A-Z Listing, Time Since, Hierarchy Select, Color i Exclude – dokładają oficjalne dodatki.

Checkboxy, listy rozwijane i filtrowanie hierarchiczne

Checkboxes to facet z polami wyboru, w którym każda opcja wyświetla liczbę pasujących wpisów. Opcje prowadzące do zera wyników – tak zwane „ghosty” – pozostają widoczne jako wyszarzone i nieklikalne, a zbyt długie listy skraca soft limit z linkiem „See {num} more”. Łączenie zaznaczeń działa w trybie AND (zawężanie) albo OR (rozszerzanie zbioru wyników), a tryb hierarchiczny rozwija gałęzie taksonomii.

Dropdown i Radio służą do wyboru jednokrotnego – odpowiednio jako lista rozwijana i przyciski opcji. fSelect rozszerza koncept listy rozwijanej o wielokrotne zaznaczanie i pole przeszukiwania wewnątrz – sprawdza się przy facetach z dużą liczbą pozycji.

Hierarchy prowadzi użytkownika w dół drzewa taksonomii poziom po poziomie – zamiast pokazywać całą listę, wyświetla bieżący stopień i pozwala schodzić głębiej.

Suwaki, zakresy liczbowe i przedziały dat

Slider to suwak zakresu liczbowego, najczęściej stosowany do ceny. Prefiks i sufiks wartości – symbol waluty, jednostkę – definiuje konfiguracja facetu, a tryb „Enclose” decyduje o sposobie porównania zakresów. Odświeżenie wyników następuje dopiero po puszczeniu uchwytu, nie w trakcie przesuwania.

Number Range udostępnia dwa pola wejściowe dla dolnej i górnej granicy wartości. Date Range zawęża wyniki do przedziału dat.

Dodatek Range List pozwala ręcznie zdefiniować przedziały liczbowe – np. „0–500 zł”, „500–1000 zł” – zamiast wolnego suwaka.

Wyszukiwanie, podpowiedzi, mapa i filtr odległości

Search to facet tekstowy wpięty w mechanizm filtrowania – obsługuje wyszukiwanie frazowe w cudzysłowie i ma konfigurowalne ustawienie „Enable relevance”. Autocomplete rozszerza go o podpowiedzi wyświetlane na bieżąco w trakcie wpisywania.

Proximity filtruje wyniki w zadanym promieniu od wpisanego adresu lub współrzędnych, a facet Map wyświetla trafienia jako pinezki na mapie z obsługą nakładających się znaczników (Overlapping Marker Spiderfier). Oba facety przepisano od nowa w wersji 4.4 – starsze warianty pozostały dostępne jako „legacy”.

Paginacja, sortowanie i podsumowanie wybranych filtrów

Facet Pager zastępuje wbudowaną paginację WordPressa wariantami: numery stron, „Load more”, „Per page” i „Result counts” – z konfigurowalnym celem i offsetem przewijania.

Sort prezentuje sortowanie wyników jako element interfejsu z własnymi opcjami porządkowania. Reset czyści aktywne filtry jednym kliknięciem, z opcją auto-ukrywania i wykluczania wybranych facetów z resetowania.

User Selections podsumowuje aktywne filtry w formie „chipsów” do pojedynczego usuwania.

Skąd FacetWP bierze dane i jak działa własny indeks

FacetWP pobiera dane do facetów z zasobów już obecnych w witrynie: taksonomii (wbudowanych i własnych), pól postmeta, danych postu (autor, data, typ), pól ACF – w tym pod-pól Repeatera, Relationship i Post Object – oraz pełnego zestawu atrybutów produktów WooCommerce. Zindeksowane wartości przechowuje w osobnej tabeli bazy danych, a indeks odświeża automatycznie po zapisie wpisu, na żądanie z poziomu WP-CLI albo cyklicznie przez WP-Cron.

Taksonomie, pola własne i pola ACF jako źródła facetów

Źródłem dowolnego facetu może być taksonomia (kategoria, tag lub taksonomia własna), pole postmeta albo dane samego postu – autor, data publikacji, typ wpisu. Struktura treści nie wymaga przebudowy ani migracji danych – facet konfiguruje się, wskazując istniejące źródło.

W Advanced Custom Fields obsługiwane typy pól to Text, Select, Checkbox, Radio Button, Date Picker, Date Time Picker, Google Map, Color Picker, Relationship, Post Object i True/False. FacetWP indeksuje również pod-pola Repeatera, a pola Image i File zapisuje w indeksie jako identyfikatory załączników.

Tabela indeksu zamiast zapytań do postmeta

FacetWP przechowuje zindeksowane wartości facetów w osobnej tabeli facetwp_index zamiast odpytywać przy każdym kliknięciu standardową tabelę postmeta WordPressa. Eliminuje to kosztowne złączenia wielu wierszy postmeta i odpowiada za deklarowaną szybkość filtrowania przy katalogach z tysiącami wpisów. Filtry AJAX sięgają po gotowy indeks bez przeładowania strony – nie przeliczają wyników od nowa.

Wartości w tabeli indeksu mają limit 50 znaków – dłuższe wpisy są obcinane. Przy opcjach z bardzo długimi nazwami grozi to kolizją między różnymi wyborami.

Reindeksacja automatyczna, przez WP-CLI i przez cron

Przy zapisie wpisu lub terminu taksonomii FacetWP automatycznie reindeksuje zmieniony rekord. Pełna reindeksacja całej bazy jest potrzebna po zmianie ustawień facetów, masowym imporcie treści, modyfikacji hierarchii terminów lub dodaniu hooków indeksujących.

Indekser uruchamia się z linii poleceń poleceniem WP-CLI. Dodatek Schedule Indexer pozwala zaplanować pełny re-index cyklicznie przez WP-Cron – np. nocą, poza godzinami szczytu.

Automatyczne reindeksowanie wyłącza się ustawieniem „Enable automatic indexing” (od wersji 4.3.4) – przydatne w środowiskach z masowymi zmianami treści, indeksowanymi zbiorczo zamiast po jednym wpisie.

Zachowanie przy dużych katalogach

Producent deklaruje szybkość indeksowania na poziomie 700–1000 wierszy tabeli indeksu na minutę i przytacza przypadek klienta, który uruchomił FacetWP na zbiorze przekraczającym 500 000 wyników. Niezależna weryfikacja tych danych nie jest publicznie dostępna.

Dodatek Caching cache’uje zapytania AJAX FacetWP w bazie danych – skraca czas odpowiedzi przy powtarzających się kombinacjach filtrów.

Wpięcie w stronę: archiwa, Listing Builder i własne pętle

FacetWP filtruje natywne archiwa WordPressa bez ingerencji w pliki szablonu – mechanizm „Advanced query detection” samodzielnie wykrywa główne zapytanie strony i podpina pod nie aktywne facety. Alternatywnie listę wyników składa się wbudowanym Listing Builderem, blokami edytora lub shortcode’ami, a własną pętlę WP_Query wystarczy oznaczyć klasą facetwp-template – warstwa hooków, API JavaScript i REST API dopełnia możliwości w scenariuszach niestandardowych.

Automatyczne wykrywanie zapytania na archiwach

Ustawienie „Advanced query detection” (w wersjach wcześniejszych niż 4.5 określane jako „Strict query detection”) jest domyślnie włączone. Dzięki niemu FacetWP automatycznie rozpoznaje główne zapytanie na stronach archiwum – kategorii, tagu, autora, daty czy własnego typu treści (CPT).

Do szablonu archiwum nie trzeba dodawać klas CSS ani shortcode’ów. Wystarczy umieścić facety na stronie – wtyczka sama podpina się pod zapytanie.

Listing Builder i dynamiczne tagi URL (http:uri, http:get)

Listing Builder to wbudowany kreator siatek wyników: pozwala zdefiniować układ, wybrane pola (tytuł, obrazek, metadane), własny komunikat „brak wyników” i – od wersji 4.3.2 – edytować szablon w wizualnym edytorze kodu. Ścieżka dla witryn, które nie korzystają z żadnego page buildera.

Dynamiczne tagi URL http:uri i http:get pozwalają wstępnie odfiltrować zapytanie listingu na podstawie adresu podstrony. Tag http:uri wyciąga segment ścieżki (np. z /przewodniki/amsterdam – wartość amsterdam), a http:get czyta parametr GET z adresu. Jeden listing obsługuje dzięki temu wiele podstron bez dodatkowego kodu.

Bloki, shortcode’y i własne WP_Query

Facety, listingi, paginację, sortowanie i podsumowanie aktywnych filtrów osadza się na stronie przez bloki edytora Gutenberga, shortcode’y lub bezpośrednio z poziomu PHP.

Dowolną istniejącą pętlę WP_Query wystarczy oznaczyć klasą CSS facetwp-template – FacetWP rozpoznaje ją jako listing i filtruje jej wyniki. Wtyczka obsługuje dowolne typy treści: posty, strony, produkty WooCommerce, oferty pracy, wydarzenia i własne typy treści (CPT).

Hooki, API JavaScript i REST API dla wdrożeń niestandardowych

FacetWP udostępnia rozbudowany zestaw hooków PHP w czterech kategoriach: indeksowanie (m.in. facetwp_index_row, facetwp_indexer_query_args), zapytania (facetwp_query_args), wyjście (facetwp_facet_html) i zaawansowane. Pozwalają modyfikować sposób indeksowania danych, zmieniać zapytanie filtrujące lub przebudowywać HTML poszczególnych facetów.

Po stronie front-endu obiekt JavaScript FWP oraz zdarzenia facetwp-refresh i facetwp-loaded umożliwiają re-inicjalizację skryptów motywu – lightboxów, lazy loadingu, animacji – po każdym AJAXowym odświeżeniu wyników.

REST API obejmuje endpoint /facetwp/v1/refresh (używany przez front-end wtyczki) oraz /facetwp/v1/fetch, który zwraca surowe dane facetów i wyników do zastosowań headless. Endpoint fetch jest domyślnie wyłączony i wymaga aktywacji filtrem PHP.

Konfigurację facetów i szablonów listingów można wyeksportować do JSON i przenieść między instalacjami. Hooki facetwp_facets i facetwp_templates pozwalają rejestrować facety i szablony programistycznie – konfiguracja trafia wtedy pod kontrolę wersji w repozytorium.

Od wersji 4.5 skrypty inline dodaje funkcja wp_print_inline_script_tag() – zapewnia to zgodność ze strict Content Security Policy opartym na nonce.

Sklepy, katalogi i archiwa — gdzie FacetWP się sprawdza

FacetWP sprawdza się tam, gdzie użytkownicy przeszukują duże zbiory treści po wielu kryteriach naraz – w sklepach WooCommerce z wielocechowym katalogiem, w portalach ogłoszeniowych i katalogach firm budowanych na polach ACF, w obszernych archiwach publikacji i w projektach agencyjnych z niestandardową logiką filtrowania.

Dla kogo FacetWP się sprawdza:

  • Sklepy WooCommerce z rozbudowanym katalogiem i filtrowaniem po wielu cechach naraz.
  • Katalogi firm, portale ogłoszeniowe i strony typu directory oparte na polach ACF.
  • Serwisy contentowe z dużym archiwum – bazy wiedzy, przepisy, dokumenty, publikacje.
  • Agencje i deweloperzy budujący wdrożenia na zamówienie z hookami, REST API i konfiguracją w kodzie.
  • Strony na Bricks, Elementorze, Beaver Builderze, Breakdance i czystym Gutenbergu.

Sklep WooCommerce z katalogiem wielocechowym

Sklep z kilkoma tysiącami produktów opisanych atrybutami (marka, model, rozmiar, kolor, przedział cenowy) korzysta z panelu filtrów złożonego z checkboxów dla atrybutów, suwaka ceny, facetu Rating dla ocen gwiazdkowych i facetu stanu magazynowego. Po każdym wyborze pozostałe filtry przeliczają liczniki i wygaszają opcje, które nie zwrócą żadnych wyników.

Produkty wariantowe FacetWP filtruje po atrybutach na poziomie produktu nadrzędnego. Produkty niedostępne w magazynie domyślnie nie trafiają do indeksu – zmienia to ustawienie „Index out-of-stock products”.

Poradnik icommedia.pl wymienia FacetWP jako rozwiązanie z własnym indeksem do filtrowania produktów WooCommerce – podkreśla wydajność filtrowania i kontrolę nad szablonami.

Portale ogłoszeniowe i katalogi firm z filtrem odległości

Serwis z ogłoszeniami lub katalog usługodawców, w którym dane przechowują pola ACF (metraż, liczba pokoi, cena, współrzędne GPS), korzysta z facetów Number Range, Slider, checkboxów dla udogodnień oraz Proximity i Map. Wyniki wyświetlają się jednocześnie jako lista i pinezki na mapie.

Dodatek User Post Type rozszerza filtrowanie na listy użytkowników – np. profile specjalistów, ekspertów lub firm.

Archiwa publikacji, bazy wiedzy i biblioteki dokumentów

Archiwum WordPress z setkami lub tysiącami materiałów ma zwykle opisane taksonomie – temat, typ materiału, rok, autor. FacetWP sięga po nie jako po gotowe źródło facetów, bez przebudowy szablonu. Facety A-Z Listing, Time Since i Hierarchy dopełniają panel filtrów – odpowiednio filtrem alfabetycznym, interwałem czasowym typu „w ciągu ostatnich 30 dni” i nawigacją po zagnieżdżonych kategoriach.

Dodatek Recipes integruje FacetWP z WP Recipe Maker i Tasty Recipes – obejmuje to scenariusze filtrowanych baz przepisów kulinarnych.

Wdrożenia agencyjne i katalogi wielojęzyczne

Agencje i zespoły deweloperskie budują z FacetWP wdrożenia, w których filtry uwzględniają logikę wykraczającą poza standardowy zakres. Hooki facetwp_index_row i facetwp_query_args pozwalają modyfikować dane w indeksie i zmieniać zapytanie filtrujące, dynamiczne tagi URL obsługują wstępne odfiltrowanie listingu na podstawie adresu podstrony, a REST API otwiera drogę do architektury headless.

Katalogi wielojęzyczne na WPML lub Polylang korzystają z dodatku Multilingual, który ogranicza indeks i wyświetlane wyniki do aktywnego języka. Warunek konfiguracyjny w WPML: dla każdego typu postu i taksonomii trzeba wybrać opcję „Only show translated items” – opcja fallbacku do języka oryginalnego powoduje duplikowanie terminów w facetach.

Dla kogo FacetWP nie będzie dobrym wyborem

  • Witryny zbudowane na Divi, WPBakery lub Oxygen – brak oficjalnej integracji z tymi builderami; obejściem jest Listing Builder, bloki Gutenberga lub własne WP_Query, ale bez gwarancji pełnej kompatybilności.
  • Małe blogi i strony wizytówkowe, na których kilkadziesiąt wpisów nie uzasadnia wielokryterialnego filtrowania facetowego.
  • Osoby oczekujące efektu bez konfiguracji – produkt ma wyraźną krzywą uczenia się i zakłada zrozumienie pojęć: facet, listing, źródło danych, indeksowanie.
  • Sieci multisite z potrzebą filtrowania treści z wielu podstron jednocześnie – FacetWP pracuje w obrębie pojedynczej podstrony, a producent deklaruje brak planów rozszerzenia tego zakresu.
  • Projekty wymagające przede wszystkim wyszukiwania pełnotekstowego – FacetWP filtruje, ale nie zastępuje silnika wyszukiwania; do tego integruje się z SearchWP, Relevanssi lub ElasticPress.

Na rynku FacetWP funkcjonuje obok WP Grid Builder, JetSmartFilters, Search & Filter Pro i Filter Everything – każde z tych narzędzi ma inny profil (obsługiwane buildery, krzywa uczenia się) i inne kompromisy.

Integracje z WooCommerce, ACF, builderami i wtyczkami wielojęzycznymi

FacetWP integruje się z WooCommerce, Advanced Custom Fields, Meta Box, SearchWP, Relevanssi, WP Job Manager, Easy Digital Downloads i The Events Calendar – producent dokumentuje każdą z tych integracji. Osobne dodatki zapewniają współpracę z blokami Gutenberga (Query Loop, Product Collection), Bricks, Elementorem i Beaver Builderem, a wielojęzyczność obsługuje dodatek Multilingual dla WPML i Polylanga z tłumaczeniem etykiet facetów hookiem facetwp_i18n.

WooCommerce: ceny, oceny, stan magazynowy i atrybuty produktów

Zestaw źródeł danych WooCommerce w FacetWP obejmuje cenę (regularną, promocyjną i aktualną), średnią ocenę, stan magazynowy, flagę promocji, wyróżnienie, typ produktu, kategorie, tagi i atrybuty – w tym atrybuty produktów wariantowych na poziomie produktu nadrzędnego.

FacetWP obsługuje wbudowaną paginację i sortowanie WooCommerce. Produkty niedostępne domyślnie nie trafiają do indeksu – zachowanie zmienia ustawienie „Index out-of-stock products”.

Advanced Custom Fields i Meta Box jako źródła pól

FacetWP odczytuje pola ACF bezpośrednio z bazy danych i indeksuje je jako źródła facetów. Obsługiwane typy obejmują Text, Select, Checkbox, Radio Button, Date Picker, Date Time Picker, Google Map, Color Picker, Relationship, Post Object, True/False oraz pod-pola pól Repeater.

Integrację z Meta Box realizuje osobny dodatek strony trzeciej.

Bloki Gutenberga, Bricks, Elementor i Beaver Builder

Dla każdego z głównych builderów FacetWP udostępnia osobny dodatek:

  • Bloki Gutenberga / FSE – dodatek Blocks obsługuje Query Loop, Posts List, Latest Posts, WooCommerce Product Collection i starszy Products (Beta); w edytorze dostępne są bloki „Facet” i „Listing”.
  • Bricks – dodatek obejmuje elementy Posts i Query Loop (w Container/Block/Div) oraz Products; włączany przełącznikiem „Use FacetWP”.
  • Elementor – dodatek obsługuje Loop Grid, Loop Carousel, Posts, Archive Posts, Products, Archive Products i widgety z rozszerzeń Ultimate Addons, Premium Addons, PowerPack oraz JetEngine (Listing Grid).
  • Beaver Builder – osobny dodatek z obsługą modułu Loop.

Breakdance ma integrację z FacetWP wbudowaną po stronie buildera – działa dla elementów Post Loop Builder, Post List, Products List i Shop Page. Wsparcie techniczne dla tej integracji zapewnia zespół Breakdance.

WPML i Polylang w katalogach wielojęzycznych

Wielojęzyczność obsługuje dodatek Multilingual, kompatybilny z WPML oraz Polylang / Polylang Pro. Etykiety facetów i dynamiczne ciągi „z bazy danych” tłumaczy hook facetwp_i18n, a standardowe ciągi interfejsu – narzędzia tłumaczące (PoEdit, Loco Translate, filtr gettext).

Uwaga: w WPML nie są obsługiwane permalinki w formie parametru URL (?lang=fr) – działają wyłącznie subdomeny i podkatalogi. W Polylang Pro funkcja współdzielonych slugów między tłumaczeniami powoduje błędne wyniki facetów. Weglot i TranslatePress nie mają oficjalnej integracji – producent dokumentuje obejścia, ale nie zapewnia wsparcia.

Wyszukiwarki: SearchWP, Relevanssi i ElasticPress

FacetWP nie zastępuje silnika wyszukiwania pełnotekstowego – współpracuje z istniejącymi rozwiązaniami. SearchWP ma integrację wbudowaną w rdzeń FacetWP, Relevanssi współpracuje przez osobny dodatek, a ElasticPress wymaga ustawienia odpowiedniej flagi konfiguracyjnej.

Osobne udokumentowane integracje obejmują WP Job Manager, Easy Digital Downloads, The Events Calendar, Document Library Pro, WP All Import, Yoast SEO, All in One SEO, WPGraphQL i GA4.

Ograniczenia FacetWP przed wdrożeniem

FacetWP odświeża na stronie wyłącznie jeden listing – pozostałe szablony wyników pozostają statyczne i nie reagują na zmiany facetów. Wtyczka nie obsługuje infinite scroll ani zewnętrznych mechanizmów „load more” (zastępuje je wbudowanym facetem Pager), nie filtruje treści między podstronami multisite, w większości scenariuszy nie współpracuje z cache obiektowym, a adresy wyników generuje jako parametry GET zamiast „ładnych” permalinków.

Jeden filtrowany listing na stronę

Na jednej stronie może istnieć wiele szablonów listingów, ale wyłącznie jeden z nich reaguje na facety – pozostałe wyświetlają statyczną listę. Ograniczenie dotyczy również integracji z builderami: dodatek Bricks obsługuje jeden element z włączonym FacetWP na stronę, dodatek Blocks – analogicznie.

Dla scenariuszy wymagających dwóch niezależnie filtrowanych list FacetWP nie oferuje rozwiązania w ramach jednej strony.

Adresy wyników, paginacja i brak infinite scroll

Adresy przefiltrowanych wyników mają postać parametrów GET z prefiksem podkreślenia – np. ?_nazwafacetu=wartosc. FacetWP nie generuje „ładnych” permalinków typu /kolor/czerwony/ – producent argumentuje to względami SEO: czyste permalinki generowałyby wiele adresów o niemal identycznej treści.

Paginację motywu lub innej wtyczki trzeba zastąpić facetem Pager – do wyboru numery stron, „Load more”, „Per page” i „Result counts”. Infinite scroll nie jest obsługiwany.

Multisite, cache obiektowy i limit długości wartości w indeksie

FacetWP pracuje w sieciach multisite, ale wyłącznie w obrębie pojedynczej podstrony. Filtrowanie treści z wielu podstron jednocześnie nie jest obsługiwane – producent deklaruje brak planów rozszerzenia tego zakresu.

Cache obiektowy (Redis, Memcached) w większości przypadków nie współpracuje z FacetWP.

Wartości w tabeli indeksu mają limit 50 znaków – dłuższe wpisy są obcinane. Przy opcjach z bardzo długimi nazwami grozi to sklejeniem różnych wyborów w jedną pozycję.

Buildery bez oficjalnej integracji: Divi, WPBakery, Oxygen

FacetWP nie ma oficjalnej integracji z Divi, WPBakery ani Oxygen Builderem. Obejściem jest wbudowany Listing Builder, bloki Gutenberga, własne WP_Query lub natywne archiwum WordPress – ale wynik zależy od konfiguracji szablonu i nie jest gwarantowany.

W Divi występuje dodatkowy znany problem: opcja „Grab the first post image” powoduje wyświetlanie błędnych miniatur po przefiltrowaniu wyników.

Dostępność (a11y) i publiczna lista znanych konfliktów

Wsparcie dostępności jest opcjonalne – trzeba je włączyć ustawieniem „Load a11y support” lub filtrem facetwp_load_a11y. Dodaje głównie atrybuty aria-label do facetu Pager i umożliwia dodanie aria-live / role=status. Nie obejmuje pełnej warstwy dostępności dla wszystkich typów facetów.

Producent utrzymuje publiczną, aktualizowaną listę wtyczek i motywów, z którymi FacetWP wchodzi w znane konflikty – m.in. Ajax Search Lite, WooCommerce Product Search, Popup Builder, Wordfence (błędy 403). Dla większości podaje obejście. Sama długość listy sygnalizuje, że wtyczka głęboko ingeruje w zapytania WordPressa i w złożonym środowisku wymaga testowania.

Czego wymaga FacetWP: WordPress, PHP i środowisko serwera

FacetWP działa na WordPressie 5.0 i nowszym z PHP 7.0+ – producent potwierdza pełne wsparcie dla PHP 8.x oraz zgodność z najnowszymi wydaniami WordPressa. Wtyczka wymaga instalacji self-hosted (WordPress.com nie jest obsługiwany), nie wspiera instalacji przez Composera, a w sieciach multisite funkcjonuje w obrębie pojedynczej podstrony.

Wersje WordPressa, PHP i typ instalacji

Minimum to WordPress 5.0 z PHP 7.0. Producent rekomenduje PHP 8.x i deklaruje zgodność z najnowszymi wydaniami WordPressa – historia wydań potwierdza, że każda duża wersja WP otrzymywała poprawki kompatybilności po stronie FacetWP.

Instalacja wymaga self-hosted WordPressa. WordPress.com i instalacja przez Composera nie są obsługiwane. Minimalnej wersji WooCommerce producent nie deklaruje.

Status wsparcia dla builderów, edytora bloków i motywów

Oficjalne dodatki FacetWP zapewniają integrację z Gutenbergiem (FSE, Query Loop), Bricks, Elementorem i Beaver Builderem. Breakdance ma integrację wbudowaną po stronie buildera. Divi, WPBakery i Oxygen nie mają oficjalnej integracji.

Producent deklaruje kompatybilność z większością motywów – FacetWP wpina się w standardowe zapytania WordPressa. Osobne strony pomocy istnieją dla motywów Flatsome, Listify, Listable i frameworka Genesis. Znane problemy dotyczą motywów Divi, MyListing, Neve (z Elementorem) i Salient.

Wielojęzyczność, hosting, cache i minifikacja

Dodatek Multilingual obsługuje WPML i Polylang / Polylang Pro. Weglot i TranslatePress nie mają oficjalnej integracji.

Osobne strony pomocy istnieją dla WP Engine, Pressable, Cloudflare, WP Rocket, New Relic i Fast Velocity Minify. Cache obiektowy w większości przypadków nie współpracuje z FacetWP. Minifikacja HTML może zakłócać automatyczne wykrywanie listingu.

Dla polskich wdrożeń wielojęzycznych obsługa WPML i Polylang stanowi atut. Interfejs wtyczki jest przygotowany do tłumaczenia (pliki pot/po/mo, Text Domain, hook facetwp_i18n dla etykiet facetów), choć gotowe polskie tłumaczenie nie jest potwierdzone przez producenta.

ParametrWartość
Wersja4.5
Wersja WordPress5.0 lub nowsza (deklarowana zgodność z najnowszymi wydaniami)
Wersja PHP7.0 lub nowsza (rekomendowane 8.x)
Typ instalacjiself-hosted (WordPress.com niewspierany)
Instalacja przez Composernieobsługiwana
Multisitetak, w obrębie pojedynczej podstrony
Buildery z oficjalnym wsparciemGutenberg/FSE, Bricks, Elementor, Beaver Builder (oficjalne dodatki); Breakdance (integracja po stronie buildera)
Buildery bez oficjalnej integracjiDivi, WPBakery, Oxygen
WielojęzycznośćWPML, Polylang / Polylang Pro (dodatek Multilingual)
Cache obiektowyw większości przypadków niewspierany
Wsparcie dostępności (a11y)opcjonalne, włączane ustawieniem

Pytania kupujących o FacetWP

Jakie page buildery obsługuje FacetWP?


FacetWP ma oficjalne dodatki dla czterech builderów: bloków Gutenberga (w tym FSE i Query Loop), Bricks, Elementora i Beaver Buildera. Breakdance oferuje integrację z FacetWP wbudowaną po stronie buildera – wsparcie techniczne zapewnia zespół Breakdance. Divi, WPBakery i Oxygen nie mają oficjalnej integracji – obejściem jest wbudowany Listing Builder, bloki Gutenberga lub oznaczenie własnej pętli WP_Query klasą facetwp-template.

Czy FacetWP filtruje warianty produktów WooCommerce?


FacetWP filtruje atrybuty produktów wariantowych na poziomie produktu nadrzędnego. Facety wyświetlają dostępne opcje (np. rozmiary, kolory), ale wynikiem filtrowania jest produkt nadrzędny, nie pojedyncza wariacja. Filtrowanie, w którym każdy wariant pojawia się jako osobny wynik na liście, nie jest obsługiwane.

Czy mogę mieć kilka filtrowanych list na jednej stronie?


FacetWP filtruje na stronie wyłącznie jeden listing – dwa gridy postów z dwóch różnych typów treści, każdy z własnym zestawem filtrów, nie działają w ramach jednej strony. Na stronie może istnieć wiele szablonów listingów, ale tylko jeden reaguje na zmiany facetów. Pozostałe wyświetlają statyczny zestaw wyników.

Czy FacetWP szkodzi SEO?


FacetWP sam w sobie nie blokuje indeksowania treści przez roboty wyszukiwarek – paginacja oparta na facecie Pager generuje adresy z parametrami GET, które crawlery mogą śledzić. Producent dokumentuje integracje z Yoast SEO i All in One SEO, łącznie ze snippetami ustawiającymi noindex dla przefiltrowanych adresów z parametrami facetów. Adresy wyników filtrowania można dodatkowo kontrolować regułami w robots.txt lub dyrektywami meta.

Czy FacetWP działa na multisite?


FacetWP działa w sieciach multisite WordPress, ale wyłącznie w obrębie pojedynczej podstrony. Filtrowanie treści z wielu podstron jednocześnie nie jest obsługiwane – wtyczka indeksuje i przeszukuje dane tylko tej podstrony, na której jest aktywna. Producent deklaruje brak planów rozszerzenia tego zakresu.

Nie jestem programistą czy dam radę używać FacetWP?


FacetWP przy prostszych scenariuszach – filtrowanie archiwum po taksonomiach, suwak ceny w sklepie WooCommerce – nie wymaga pisania kodu. Konfiguracja odbywa się w panelu administracyjnym i Listing Builderze. Przy bardziej złożonych wdrożeniach (niestandardowe źródła danych, modyfikacja zapytań, zaawansowana integracja z motywem) potrzebna jest znajomość PHP i hooków WordPressa. Sam producent w FAQ przyznaje, że przy nieznajomości tych pojęć pomocna będzie osoba z doświadczeniem deweloperskim.

Nowe wersje oprogramowania są dostępne zazwyczaj w ciągu kilku dni. Nowe wersje można pobrać w panelu pobrań lub na stronach produktów (będąc zalogowanym).

Jeśli na stronie produktu nie ma informacji o numerze aktualnej wersji pod nazwą dewelopera to można ją sprawdzić dla wtyczek tutaj , a dla szablonów tutaj.

Możesz również aktualizować wiele wtyczek i szablonów za pomocą jednego kliknięcia! Wymagany jest jedynie dostęp do SSH i FTP. Więcej informacji znajdziesz tutaj.

Opcja wysyłania zgłoszeń aktualizacyjnych dostępna jest tylko dla zalogowanych użytkowników.

Opinie

Na razie nie ma opinii o produkcie.

Tylko zalogowani klienci, którzy kupili ten produkt mogą napisać opinię.

Może spodoba się również…