--=REKLAMA=--
Wtyczki Inteligentnego Wyszukiwania są dla wygody umieszczane w grupie pluginów zwanej "finder". Sprawdź folder plugins/finder, a znajdziesz tam wtyczki, które obsługują ten typ zawartości rdzenia Joomla! Najlepszą metodą tworzenia tych wtyczek, jest skopiowanie, którejś z już dostępnych id dostosowanie jej do swoich potrzeb.
Wszystkie wtyczki Inteligentnego wyszukiwania dziedziczą po klasie FinderIndexerAdapter, która zwiera większość niezbędnych metod, potrzebnych do prawidłowego wyszukiwania. W większości przypadków, personalizacja skopiowanej wtyczki, ogranicza się do nadpisania kilku z tych metod.
Więcej o wtyczkach Inteligentnego Wyszukiwania przeczytasz tutaj.
Przed analizą metod, należy prawidłowo zdefiniować kilka własności:
Pierwsze metody które będziesz nadpisywał tworząc wtyczkę Inteligentnego Wyszukiwania, to metody setup, index oraz getListQuery. The first methods you will want to override when developing a new Smart Search plug-in are the setup, index and getListQuery methods. W większości przypadków te trzy metody wystarczą by stworzyć w pełni działającą wtyczkę. Oczywiście są dodatkowe metody, które pozwalają na aktualizację indeksu przy zmianie treści, ale są to metody które nie są wymagane do podstawowego funkcjonowania wtyczki.
Do uzyskania poprawnie działającej wtyczki Inteligentnego Wyszukiwania, czasami będzie potrzebne nadpisanie kilku innych metod.
Poniższe metody są wywoływane przez wtyczkę Inteligentnego Wyszukiwania w odpowiedzi na określone zdarzenia wywoływane w Joomla.
Metoda ta musi zwracać obiekt typu JDatabaseQuery, który będzie stanowił podstawę kwerendy zwracającej listę obiektów danego typu zawartości. This method must return a JDatabaseQuery object that will form the basis of a query that will return a list of objects of the given content type. Istnieją ograniczenia tego zapytania, aby zapewnić jego zgodność z innymi metodami wykorzystywanymi przez indexer. Jeśli warunki ograniczeń są spełnione nie istnieje potrzeba nadpisywania metod w klasie FinderIndexerAdapter.
Metoda ta jest wywoływana gdy treść elementu musi być zaindeksowana lub gdy istnieje potrzeba ponownego jej zaindeksowania. Przekazywany jest jej obiekt typu FinderIndexerResult i jej celem jest dopasowanie tego obiektu oraz dodanie metadanych przed przekazaniem go do metody FinderIndexer::index.
Metoda ta jest wywoływana przed metodą index i jest używana do inicjalizacji. Metoda ta najczęściej ustawia wszystkie wymagane zmienne oraz biblioteki, niezbędne do prawidłowego działania wtyczki.
Testowanie wtyczek wyszukiwania może być neico kłopotliwe ze względu na to, że zwykle proces ten wykonywany jest przy użyciu ajax, więc nie ma w zasadzie widocznych rezultatów tego procesu.
Jako taki sposobem do testowania, jest użycie lini poleceń indexera.[2]
Uruchom sesję polecenia prompt/ssh na serwerze i przejdź do katalogu głównego strony. Stamtąd możesz uruchomić indexer, a wszystkie komunikaty błędów będą wyświetlane w oknie poleceń.
php cli/finder_indexer.php
» Robertm,