fbpx

Wyszukiwarka jest naturalnym elementem praktycznie każdej strony internetowej. Kiedy ostatni raz zastanawiałeś się jak jej użyć? Pewnie nigdy. Dobrze zgaduję? W przypadku rozwiązań intranetowych jest trochę inaczej. Cały czas wyszukiwarka jest niezbędnym elementem, ale pracuje w zupełnie innym otoczeniu. Cały czas musi być piekielnie prosta, tyle że przeszukiwane dane często są specyficzne. To nie tylko strony, ale i całe witryny, biblioteki i dokumenty, listy i elementy w nich zapisane. Wszędzie metadane i kolumny, a do tego uprawnienia, które trzeba na bieżąco weryfikować. Wszystko to sprawia, że wyszukiwarka w SharePoint to bardzo potężne, ale i skomplikowane narzędzie. Narzędzie, które postaram Ci się przybliżyć. Skupię się przede wszystkim na kwestiach użytkowych i konfiguracji webpartów PnP. Ogarnięcie całego tematu kompleksowo, to temat na książkę. W kilku tomach 🙂

Główne elementy wyszukiwarki SharePoint

Za wyszukiwarką w SharePoint Online ciągnie się długa historia i trochę długu technologicznego. Ciągle dostępna jest klasyczna witryna centrum wyszukiwania. Wspominam o niej tylko i wyłącznie z powodu webpartów, z których była zbudowana. Dzięki temu pozwalała na szerokie dostosowanie i zmiany. Powoli odchodzi do lamusa. Nie korzystaj z niej jeśli nie musisz. Obecnie domyślnym interfejsem jest wyszukiwarka w trybie modern. Nowsza, ładniejsza, szybsza, ale na ten moment nie możemy modyfikować jej interfejsu (przynajmniej z poziomu wbudowanych w SharePoint Online funkcji). Warto też wspomnieć o Microsoft Search, czyli usłudze, która swoim zasięgiem obejmuje cały Office 365 i docelowo ma zastąpić poszczególne wyszukiwarki z poszczególnych produktów. W tym artykule nie będę jej wykorzystywał i opisywał. Z jakich elementów składa się całe rozwiązanie?

SharePoint Search Overview
  • Źródła. Wszystkie dane (listy, strony, dokumenty, itp.), które są przeszukiwane. Ogólnie to wszystko, co do SharePoint jest dodawane.
  • Crawler. To proces, który odpowiedzialny jest za znalezienie, otworzenie i przeczytanie zawartości oraz właściwości poszczególnych części źródła.
  • Index. Z odczytanych przez Crawler danych budowany jest index. To odpowiednio zoptymalizowana baza danych. Trafiają do niej tylko właściwe dane (tym można zarządzać). Dzięki temu odpytywanie jej jest szybkie, a jej rozmiar może być duuuuży.
  • Okno wyszukiwania. Najbardziej oczywista część. Tu wpisujesz swoje zapytania. Najczęściej proste, ale obsługuje także odpowiedni format złożonych zapytań. W przypadku SharePoint standard ten to KQL (o nim później).
  • Lista wyników. To miejsce, w którym prezentowane są wyniki. Najczęściej tuż pod oknem wyszukiwania, ale tak być nie musi.

Webparty PnP

O technologii i tajnikach działania wyszukiwarki można by pisać długo. Skupmy się jednak na kluczowym elemencie. Na koniec dnia, ważne jest jak tę całą maszynerię wykorzystamy do swoich potrzeb i wpiszemy w nasze potrzeby. Tu na białym koniu wjeżdża projekt PnP Modern Search. To świetny projekt opensource (czytaj: bezpłatnie dostępny dla wszystkich, tworzony przez społeczność). Na co pozwala? W ramach projektu udostępniane są cztery webparty, które pozwalają na zbudowanie własnego rozwiązania bazującego na wyszukiwarce. Wśród webpartów PnP znajdziesz:

SharePoint Search PnP

Search Box – okno wyszukiwania.

Search Filters – okno filtrowania wyników wyszukiwania. Tutaj wyświetlane są tzw. Refiners (wybacz, ale nie wiem jak to dobrze przetłumaczyć)

Search Results – prezentuje wyniki wyszukiwania. To tu dzieje się najwięcej. To tu spędzisz najwięcej czasu konfigurując rozwiązanie

Search Verticals – najbardziej tajemniczy element, ale i najprostszy. Wertykały to po prostu statyczne filtry.

Scenariusze użycia

Pewnie zastanawiasz się, jak to wszystko można właściwie wykorzystać? Ponieważ z wyszukiwarki możemy „wyciągnąć” właściwie dowolny dokument, element na liście czy stronę, to jest to przede wszystkim świetny mechanizm agregacji danych. Szczególnie jeśli te dane są rozrzucone po wielu witrynach, których istnienia niekoniecznie musisz być świadomy. Udostępniane dokumenty działowe, procedury, sprawozdania, raporty, itp. Zwróć uwagę, że kluczowym elementem tych rozwiązań jest niezdefiniowana na sztywno lokalizacja tych danych. Może być ich dużo, lub bardzo mało. Mogą być w jednym miejscu, mogą być w setkach lokalizacji. To nie ma znaczenia. Dopóki jesteś w stanie je odfiltrować (tu przydadzą się niestandardowe kolumny), dopóty bez problemów je wyświetlisz. Obraz wart tysiąca słów. Zobacz jak to wszystko działa.

Demo

Poniższe nagranie pochodzi z jednego ze spotkań na żywo organizowanych w ramach SharePoint Ninja. To prowadzone przeze mnie szkolenie w trybie hybrydowym (spotykamy się na żywo, ale spotkania są nagrywane, a pytania i problemy można zgłaszać na dedykowanej grupie na Discord). Nowa edycja tego programu rozpoczyna się już lutym (środa 22 lutego, godz. 10:00). Spotkania planuję na środy (pięć kolejnych tygodni), a kolejne edycje odbędą się latem i jesienią. Zerknij na stronę szkolenia i koniecznie dołącz do grupy (jest otwarta dla wszystkich).

Podsumowanie

Mam nadzieję, że zachęciłem Cię do zgłębienia tematu wyszukiwarki w SharePoint Online. Sprawdź i przetestuj. Pamiętaj tylko o kilku rzeczach:

  • Bezwładność wyszukiwarki. Możesz ją zmniejszyć wyszuszając ponowną indeksację na poziomie biblioteki i/lub witryny.
  • Zarządzane właściwości i mapowania. Od tego zacznij. Dodaj aliasy i koniecznie pamiętaj o „Refiners”.
  • Automatyczna lokalizacja i Managed Metadata. To parametr webparta wyników wyszukiwania, który może zaoszczędzić Ci najwięcej frustracji. Po prostu go zaznacz jeśli pracujesz z Managed Metadata.
  • Eksportuj konfigurację webpartów. Każda zmiana szablonu wyświetlania resetuje go (tzn. widok, nie webparta). Strasznie to irutyjące, dlatego zawsze miej pod ręką plik z wyeksportowaną konfiguracją. Zaufaj mi ????
  • Czytaj dokumentację! Linki poniżej.