Przejdź do treści
Podobają Ci się nasze treści?
Sięgnij po unikalną wiedzę prosto od developerów i marketingowców. Zapisz się do newslettera.
CAPTCHA
Dziękujemy za zapisanie się do newslettera!
Aby otrzymywać najświeższe, branżowe informacje, potwierdź subskrypcję w mailu, który od nas dostałeś.
PS. Nawet tak ważne wiadomości lubią czasem pomylić folder, dlatego upewnij się, że mail nie trafił do SPAMU
Otwórz swoją skrzynkę e-mail

Wyszukiwanie w WordPressie – jak działa, silniki i optymalizacja

Kategoria: 
Opublikowane: 
Czas czytania
: 11 min

Jeśli prowadzisz sklep na WooCommerce albo myślisz o tym, aby postawić firmową stronę na WordPressie – musisz wiedzieć, że wbudowana wyszukiwarka tej platformy sprawia problemy wielu użytkownikom. Z tego artykułu dowiesz się, dlaczego mechanizm wyszukiwania w CMS WordPress nie sprawdzi się w większości projektów i poznasz alternatywy.

Optymalizacja wyszukiwania w WordPressie

W 2023 r. twórcy platformy Nosto przeprowadzili badanie na 100 dużych e-sklepach w USA i Wielkiej Brytanii. Okazało się, że aż 69% klientów od razu po przejściu na stronę korzysta z wyszukiwarki… i że czterech na pięciu z nich opuszcza stronę, jeśli nie są zadowoleni z wyników. Już to powinno pokazać, jak ważna jest optymalizacja wyszukiwania, jeśli chcesz zatrzymać u siebie potencjalnych klientów – nie tylko w e-commerce.

Czym jest wyszukiwanie w WordPressie i jak działa domyślnie?

Domyślne wyszukiwanie w WordPressie to prosty silnik oparty na zapytaniach do bazy danych MySQL, który przeszukuje tytuły i treść wpisów na stronie pod kątem pasujących słów kluczowych. Wyszukiwarkę można umieścić na stronie kilkoma kliknięciami, ale ze względu na swoje ograniczenia sprawdza się ona głównie na małych blogach czy stronach-wizytówkach.

Jakie elementy przeszukuje domyślna wyszukiwarka WordPressa?

Najpierw jednak powiedzmy, co wyszukiwarka WordPressa potrafi.

Niestety, działa ona na bardzo ograniczonym zakresie danych. Przeszukuje oczywiście wszystkie opublikowane wpisy oraz statyczne strony, typu „O nas" czy „Kontakt", ale bierze w nich pod uwagę jedynie:

  • tytuły – nagłówki postów i stron, czyli pole post_title w bazie danych;
  • treść – zawartość pól edytora post_content.

Czego nie potrafi domyślne wyszukiwanie?

Wbudowany silnik wyszukiwania w WordPressie nie obsługuje:

  • wyszukiwania po polach ACF – jeśli używasz Advanced Custom Fields lub innych pluginów do tworzenia dodatkowych pól, wyszukiwarka ich nie widzi;
  • „wagowania” treści – każdy wynik ma dla wyszukiwarki taką samą wartość – obojętnie, czy szukana fraza pojawia się w tytule, czy w środku tekstu;
  • synonimów – nie ma żadnego mechanizmu, który rozpoznawałby bliskie znaczeniowo pojęcia;
  • literówek – jeśli użytkownik wpisze „laptpo" zamiast „laptop", zobaczy pustą stronę wyników wyszukiwania;
  • sortowania po trafności – wyszukiwarka zawsze zwraca wyniki chronologicznie.

Dlatego też z domyślnej wyszukiwarki WP jest sens korzystać tylko w przypadku naprawdę małych witryn, gdzie użytkownik i tak powinien być w stanie znaleźć interesującą go podstronę w kilka sekund.

Dlaczego domyślne wyszukiwanie w WordPressie często zawodzi?

Na bardziej rozbudowanej stronie użytkownicy szybko trafią na problemy:

  • będą otrzymywać zbyt wiele nieistotnych wyników;
  • kolejność wyników będzie nieintuicyjna;
  • nie będzie dało się ich zawęzić – wyszukiwarka WordPressa nie posiada filtrów;
  • a do tego, jeśli popełnią jakikolwiek błąd – nie otrzymają żadnych wyników.

Trudność sprawi też… polska fleksja. Wyobraźmy sobie, że użytkownik wpisuje w wyszukiwarkę zapytanie w liczbie mnogiej: „czerwone sukienki". Jeśli Twój produkt ma nazwę w liczbie pojedynczej i nazywa się „Czerwona sukienka wieczorowa" – mechanizm wyszukiwania WordPressa nie wyświetli tego wyniku. Nie rozpozna związku między słowami „sukienka" i „sukienki", więc potraktuje je jako dwa zupełnie różne ciągi znaków.

Jak działa zapytanie SQL w wyszukiwarce WordPressa?

Dlaczego system wyszukiwania WordPressa nie znajduje treści? Otóż wyszukiwarka przeszukuje bazę danych MySQL, wysyłając do niej proste zapytanie z operatorem LIKE.

Gdy użytkownik wpisze frazę „czerwone sukienki”, WordPress skonstruuje zapytanie w takiej formie:

SELECT * FROM wp_posts 
WHERE (post_title LIKE '%czerwone%' OR post_content LIKE '%czerwone%') 
  AND (post_title LIKE '%sukienki%' OR post_content LIKE '%sukienki%')
  AND post_status = 'publish' 
  AND post_type IN ('post', 'page')
ORDER BY post_date DESC;

Operator LIKE przeszukuje kolumny post_title i post_content w bazie w poszukiwaniu ciągów znaków pasujących do zapytania. Kłopot w tym – mówiąc już prościej – że MySQL traktuje każde słowo jako dosłowny ciąg znaków, więc zwróci tylko te wyniki, które zawierają wyszukiwaną frazę w formie 1:1. Jeżeli fraza pojawi się na jakiejś podstronie w odmienionej formie, użytkownik nie zobaczy tej podstrony w wynikach wyszukiwania.

Jak wyszukiwanie wpływa na UX i konwersję?

Z doświadczenia naszych audytów UX wiemy, że na stronach, które nie zapewniają użytkownikom dobrej, wydajnej wyszukiwarki, często można zaobserwować zjawisko zwane pogo sticking. Użytkownicy wpisują hasła, przeklikują kilka pierwszych wyników i nie znajdują na nich tego, czego szukali, więc sfrustrowani opuszczają całą witrynę. Jeśli takie sytuacje powtarzają się regularnie, to bardzo wyraźny sygnał, że problem tkwi w wyszukiwarce.

Podobnym objawem może być wysoki bounce rate witryny albo liczba porzuconych koszyków, jeśli mowa o e-commerce.

Jakie są typy wyszukiwarek dla WordPressa?

Na szczęście nie trzeba budować strony wokół domyślnego silnika. Aby poprawić wyszukiwanie na stronie WordPress, możesz albo skorzystać z jednej z wielu dostępnych w bibliotece WP wtyczek, albo z zewnętrznego silnika.

 Krótka charakterystykaKiedy ma sens?
Wewnętrzna wyszukiwarka WordPressBardzo proste narzędzie oparte na zapytaniach SQL. Przeszukuje tylko tytuły i treść postów/stron pod kątem fraz dopasowanych 1:1, brakuje jej bardziej zaawansowanych funkcji.Jeśli prowadzisz niewielkiego bloga albo stronę wizytówkową, na której użytkownicy rzadko korzystają z wyszukiwarki.
PluginyGotowe wtyczki z biblioteki WordPressa, które rozszerzają zapytania SQL i dodają wiele przydatnych funkcji, m.in. wyszukiwanie po polach niestandardowych, nadawanie różnych wag treściom czy ustalanie tolerancji dla literówek.Jeśli rozwijasz średniej wielkości projekt strony firmowej albo sklep z maks. kilkoma tysiącami produktów.
Zewnętrzne silniki wyszukiwaniaSystemy działające poza środowiskiem WordPressa, z własnymi algorytmami i infrastrukturą. Opierają się na algorytmach full-search text, dziś często wspieranych AI.Jeśli budujesz portal z tysiącami podstron i wpisów w bazie lub duży sklep na WooCommerce.

Wtyczka czy zewnętrzny silnik wyszukiwania – co wybrać?

Jeśli zdecydujesz się na wdrożenie innej wyszukiwarki niż ta wbudowana – wybór będzie zależał głównie od skali projektu. Najpopularniejsze pluginy, na przykład SearchWP czy Relevanssi, w zupełności wystarczą dla mniejszych projektów… ale mają swoje ograniczenia i technicznie nie przekroczą pewnego pułapu.

Jak działają wtyczki wyszukiwania oparte o bazę SQL?

Wtyczki działają na tej samej bazie danych MySQL, z której normalnie korzysta wyszukiwarka WordPressa, ale rozszerzają kierowane do niej zapytania SQL. Zamiast ograniczać się do pól post_title i post_content, dodają do zapytań m.in. pola niestandardowe z pluginów typu Advanced Custom Fields. Niektóre budują też własne tabele w bazie – na przykład wspomniane Relevanssi generuje oddzielną tabelę wp_relevanssi, w której przechowuje słowa kluczowe wraz z ich wagami. Ale – i to jest ważne – wciąż działają na poziomie prostego dopasowania tekstowego bez analizy semantycznej (czyli znaczenia słów i fraz).

Zalety:

  1. Szybka i prosta instalacja – wystarczy pobrać wtyczkę z repozytorium WordPressa i skonfigurować w panelu administracyjnym.
  2. Nie ma potrzeby inwestowania w dodatkową infrastrukturę – wszystko działa w ramach jednego serwera.

Wady:

  • Przy dużej ilości treści baza danych często „puchnie” – dodatkowe tabele w MySQL potrafią znacząco zwiększyć jej rozmiar.
  • Spadki wydajności przy dużym ruchu – każde zapytanie wymaga kolejnej operacji na bazie MySQL, która musi jeszcze obsłużyć pozostałe zasoby strony.
  • Ograniczona kontrola nad „rankingiem” wyników – co prawda część wtyczek przypisuje różne wagi wynikom wyszukiwania, ale to wciąż proste systemy, które nie dorównują algorytmom stosowanym w zewnętrznych silnikach.
  • Bardzo ograniczone wyszukiwanie pełnotekstowe – brakuje tu bardziej zaawansowanych mechanizmów, choć MySQL teoretycznie obsługuje indeksy FULLTEXT, co umożliwia wyszukiwanie fraz w całej treści bazy danych, a nie tylko w określonych polach.

Czyli w skrócie, są dwa główne problemy z wyszukiwarkami-pluginami: nie mają żadnego algorytmu analizującego znaczenie wyszukiwanych fraz i nie należą do najbardziej wydajnych. To drugie jest bardzo istotne – jeżeli obsługa zapytań do bazy zajmuje więcej niż 1-2 sekundy, to sygnał, że czas pomyśleć o migracji na inny silnik.

Czym są zewnętrzne silniki wyszukiwania?

Zewnętrzne silniki wyszukiwania działają całkowicie poza serwerem strony. Systemy pokroju Elasticsearch, Algolia czy Apache Solr indeksują treści z WordPressa w oddzielnej bazie i obsługują zapytania do niej przez API, pomijając przy tym bazę MySQL. To oznacza, że mogą wykorzystać o wiele bardziej zaawansowane rozwiązania. Każdy z popularnych silników obsługuje full-text search, ma swój własny algorytm rankingowy do oceniania trafności wyników, nie wspominając o wsparciu dużych modeli językowych. Dzięki temu np. Elasticsearch oferuje system wyszukiwania wektorowego, który bazuje nie na frazach kluczowych, a na znaczeniu słów.

Zalety:

  1. Wydajność – tego typu silniki są z reguły świetnie zoptymalizowane pod kątem wydajności wyszukiwania – nawet przy milionach dokumentów potrafią zwracać wyniki w czasie poniżej 50-100 ms.
  2. Zerowe obciążenie głównej bazy danych – jako że zapytania nawet nie trafiają do bazy MySQL, zasoby serwera strony mogą być wykorzystane w pełni do obsługi innych operacji.
  3. Zdecydowanie lepsza trafność wyszukiwania – silniki bez problemu radzą sobie z literówkami, rozpoznają synonimy i odmienione formy wyszukiwanych fraz.

Wady:

  • Wyższy koszt – czy weźmiemy pod uwagę silniki self-hosted, czy te dostępne w modelu SaaS w chmurze, utrzymanie takiego silnika może kosztować od kilkuset złotych miesięcznie w górę.
  • Trudniejsze wdrożenie – wymaga konfiguracji serwera oraz samego silnika, integracji z API, a potem stałej opieki nad bazą danych.

Te dwie wady sprawiają, że choć różnica klas między wtyczkami WordPressa a większymi silnikami wyszukiwania jest ogromna, wielu małym firmom bardziej opłaci się instalacja i odpowiednia konfiguracja pluginu. Natomiast już na nieco większą skalę, zdecydowanie warto zainwestować w silnik klasy enterprise.

Najlepsze rozwiązania do wyszukiwania w WordPressie

Pozostaje pytanie, co wybrać. Poniżej przedstawimy kilka odpowiedzi na problemy z wyszukiwaniem na WP.

  1. SearchWP – dlaczego jest standardem dla deweloperów?

    SearchWP jest jedną z najpopularniejszych płatnych wtyczek w bibliotece WordPressa – nie bez powodu. Developerzy bardzo ją cenią za elastyczność i jakość kodu, który zostawia sporo miejsca na customizację logiki wyszukiwania oraz to, że twórcy zapewnili obszerną dokumentację.

    Sama wtyczka bez problemu radzi sobie z każdym typem danych w WordPressie i – co ważne – oferuje natywne integracje z WooCommerce oraz WPFilters.

  2. ElasticPress – kiedy warto wdrożyć Elasticsearch?

    ElasticPress to z kolei wtyczka, która pozwala łatwo zintegrować stronę na WordPressie z Elasticsearch, czyli najpopularniejszym silnikiem wyszukiwania full-text.

    Samo Elasticsearch działa jako osobny serwer (lub klaster serwerów), który przejmuje całkowicie zadanie indeksowania i przeszukiwania treści. ElasticPress synchronizuje dane z WordPressa do indeksu Elasticsearch i kieruje wszystkie zapytania bezpośrednio do niego przez API.

    O możliwościach tego silnika (czyli o wyszukiwaniu wektorowym) już powiedzieliśmy. Trzeba przyznać, że nazwa zobowiązuje – to najbardziej elastyczna opcja dla wszystkich projektów, których skala przerasta możliwości SQL-owych wyszukiwarek. Elasticsearch poradzi sobie zarówno w sklepie z setkami tysięcy produktów, jak i na portalu newsowym czy platformie e-learningowej.

  3. Algolia – wyszukiwanie as-a-service (SaaS)

    Algolia oferuje wyszukiwarkę jako usługę w chmurze. Twórcy dostarczają całą infrastrukturę – administrator strony musi tylko zsynchronizować dane przez API, reszta jest po stronie Algolii. Co więcej, dla WordPressa dostępna jest nawet wtyczka WP Search with Algolia, która skraca czas integracji strony z silnikiem do zaledwie kilkunastu minut.

    Sam silnik jest mocno oparty na sztucznej inteligencji, zdolny do semantycznej analizy wpisywanych przez użytkowników fraz oraz uczenia się na ich błędach. Oferuje też wiele ciekawych opcji pod e-commerce, np. system rekomendacji.

    Jeśli nie zależy Ci na tym, aby hostować cały system na własnych serwerach, Algolia śmiało może konkurować z Elasticsearch.

  4. Relevanssi – rozsądna opcja dla mniejszych stron

    Ciekawą i darmową (choć dostępna jest również płatna wersja) alternatywą może być Relevanssi. Ma podobne opcje, co SearchWP, ale najbardziej chwali się ją za solidny algorytm rankingowy, oceniający wyniki wyszukiwania według trafności. Relevanssi doceniana jest również za to, że nawet w darmowym wydaniu ma wbudowany zaawansowany system filtrów.

    Główny minus? To dobre rozwiązanie, ale raczej dla mniejszych projektów. Nawet sam twórca wtyczki przyznaje, że Relevansii może mieć problemy z wydajnością przy bazach danych rzędu kilkuset MB.

Jakie elementy UX wpływają na skuteczność wyszukiwania?

Na koniec, cztery wskazówki, jak zaprojektować UX wokół wyszukiwarki, aby faktycznie spełniała oczekiwania użytkowników.

Jakie elementy warto uwzględnić w projekcie wyszukiwarki?
  1. Dobra wyszukiwarka powinna podawać userom podpowiedzi, zwłaszcza w e-commerce. Chodzi nie tylko o to, aby ułatwić im życie i skrócić o 2-3 sekundy ścieżkę konwersji (choć to też jest istotne), ale aby pokierować klientów w stronę produktów, które faktycznie są w ofercie. Dodatkowo, z dobrym silnikiem system autocomplete można tak skonfigurować, żeby promował konkretne produkty czy kategorie. Specjaliści z Nacho Analytics i SpyFu kilka lat temu wyliczyli, że autouzupełnianie w wyszukiwarce e-sklepu potrafi zwiększyć konwersję o… 24%.
  2. Na stronie wyników wyszukiwania muszą znaleźć się przynajmniej podstawowe filtry, tak aby użytkownicy byli w stanie zawęzić je do kilkunastu najbardziej trafnych propozycji.
  3. Domyślnie najlepiej ustawić sortowanie wyników według trafności, ale zawsze warto zapewnić użytkownikowi też inne opcje. W sklepie byłoby to oczywiście według ceny, popularności lub ocen, a na blogu – według daty dodania.
  4. Unikaj sytuacji, w której wyszukiwarka nie zwróci żadnego wyniku. Jak oszacowali twórcy wyszukiwarki Luigi’s Box w raporcie Search Benchmarks & Insights 2023, co trzeci user opuszcza wtedy stronę. Warto znaleźć inne rozwiązanie, np. wyświetlić najpopularniejsze i najbardziej zbliżone wyniki z tej samej kategorii, której szukał użytkownik.

Jak pokazało badanie przeprowadzone przez Econsultancy, klienci korzystający z wyszukiwarki konwertują nawet 2 razy częściej niż pozostali. I to najlepszy argument, żeby zadbać o odpowiednie rozwiązanie.

Oceń wpis
0

Dziękujemy za ocenę postu!

Mamy więcej darmowych treści. Nie rezygnuj z nich!
Technologie, SEO, marketing - newsletter z poradami, które od razu możesz wdrożyć! Prosto na Twoją skrzynkę. Za darmo i bez spam
CAPTCHA