| Wstęp | |
| Idea Instant Search | |
| Wyszukiwarki wspierające Instant Search | |
| Wyszukiwarki bez wsparcia Instant Search | |
| Dla twórców stron | |
| Standardy |
Która wyszukiwarka jest najlepsza?
Ok., dobrze, już nie będę... temat jest wdzięczny i jeżeli ktoś ma ochotę rozruszać nieciekawe spotkanie, to zawsze może zrobić niewielki flame war.
A którą wyszukiwarkę lubisz najbardziej? I tu pojawia się oczywista odpowiedź: To zależy, do czego. Ogólne wyszukiwanie to ogólne wyszukiwarki (i niech się biją o pierwszeństwo). Ale swoją własną wyszukiwarkę ma na przykład Wikipedia (po lewej, na każdej stronie). Jeżeli chcę poznać datę urodzenia Paula Allena albo ilość mieszkańców w San Francisco to nie błądzę po dziesiątkach artykułów licząc, że w którymś z nich trafię na tą jedną prostą informację. Sięgam od razu do Wikipedii, ufając (nie zawsze zresztą słusznie), że informacje w niej zawarte są prawdziwe.
Dotarcie do tej samej informacji przy pomocy wyszukiwarki masowego rażenia nie jest proste. Albo i tak trafię na Wikipedię albo mam dużo szczęścia albo muszę się nieźle nagimnastykować.
A jeżeli chcę kupić dysk SSD 32GB? Nie interesuje mnie ani jego zasada działania, ani wyniki testów, ani notki producentów dla prasy... Chcę go tanio kupić. Wtedy użyję wyszukiwarki sklepów internetowych takiej jak ceneo.pl
Dla każdego, kto ma kontakt z Internetem są to sprawy oczywiste.
Przeglądarka Internet Explorer 7 została wyposażona w nowy mechanizm Instant Search. Domyślnie umieszczone obok paska adresu okienko pozwala na wprowadzenie wyszukiwanego tekstu i po kliknięciu na ikonę lupy – szybkie jego znalezienie.

Rys. 1. Instant Search.
Po zainstalowaniu systemu, domyślnym silnikiem wyszukiwania jest Live Search. Zmienienie go na inny jest bardzo proste. Z rozwijanego menu należy wybrać "Find More Providers..." i z otwartej w ten sposób strony Microsoftu wybrać wyszukiwarkę, która ma być dołączona do listy dostępnych. Jeżeli wyszukiwarka ma być wyszukiwarką domyślną, należy zaznaczyć stosowny checkbox.
Do funkcjonalności Instant Search można się przyzwyczaić i naprawdę sprawdza się ona w codziennym użyciu. Nie trzeba wchodzić na stronę wyszukiwarki, żeby wpisać poszukiwany tekst, tylko od razu można go wklepać i dostać wyniki. Ot parę sekund, klawiszy i bajtów mniej niż standardową metodą. Dla dotkniętych rodentofobią (kto teraz nie sięgnie do wyszukiwarki?) polecić można skróty Ctrl+E, Ctrl+Strzałka w dół i Alt+Enter. Odpowiednio: przenoszą do okna Instant Search, pozwalają na wybór wyszukiwarki i otwierają wyniki w nowej zakładce zamiast w bieżącej.
Wygoda Instant Search połączona z potrzebą istnienia specjalistycznych wyszukiwarek rodzi automatycznie pytanie: Jak dodać własną wyszukiwarkę do listy. Opcje są dwie. Albo twórca wyszukiwarki zadbał o użytkowników Instant Search (Wikipedia, Ceneo, Onet i wielu wielu innych) albo jeszcze tego nie zrobił (Allegro, nasza-klasa, wp.pl, itd.)
Jeżeli zadbał o użytkowników Internet Explorer 7, to sprawa jest prosta. Po wejściu na taką stronę, strzałka w Instant Search zapala się na pomarańczowo.

Rys. 2. Strzałka w Instant Search zapala się na pomarańczowo.
Po rozwinięciu listy (jak wspomniano powyżej poprzez Ctrl+E, Ctrl+Strzałka w dół) pojawia się na niej nowy Search Provider oznaczony żółtą gwiazdką.

Rys. 3. Nowy Search Provider oznaczony żółtą gwiazdką.
Na tej stronie można go prosto używać jednak po przejściu na inną stronę zniknie z listy. Skorzystanie z Instant Search w Wikipedii dopiero po wejściu na jej stronę jest bez sensu i nie daje żadnej korzyści użytkownikowi. Ideałem byłoby, gdyby wyszukiwarkę można było dodać na stałe do listy. Jest to bardzo proste: wystarczy wybrać "Add Search Provider" i wybrać silnik wyszukiwarki.

Rys. 4. Add Search Provider.
Pojawi się okienko dialogowe, w którym należy potwierdzić chęć dodania wyszukiwarki i określić czy od tej pory ma to być wyszukiwarka domyślna.

Rys. 5. Okienko dialogowe.
Od tej pory, skorzystanie z ogromu wiedzy na Wikipedii będzie nieco prostsze nich dotychczas. W identyczny sposób można sobie pododawać dziesiątki wyszukiwarek, jeżeli tylko komuś taka właśnie ilość jest potrzebna.
Odrobinę trudniej wygląda sprawa ze stronami, na których wyszukiwarka jest, ale nikt nie zadbał o użytkowników Instant Search. Trzeba mieć nadzieję, że wyszukiwanie odbywa się przy pomocy metody GET i że nikt nie wprowadził żadnych szczególnych udziwnień. Na podstawie portalu nasza-klasa można to prosto sprawdzić. Po wybraniu z menu "szukaj znajomych" należy wpisać imię i nazwisko i kliknąć "Szukaj". Jak widać, w pasku adresu pojawił się URL zawierający podane zapytanie. Oznacza to, że użyta została właśnie metoda GET. Zmylić tu może bardziej złożona strona z ramkami (frames), ale można przyjąć, że GET to zdecydowana większość przypadków. Aby dodać taki Search Provider należy w portalu wyszukać słowo TEST. Koniecznie dużymi literami. Następnie należy skopiować URL i wkleić go w żółtym panelu na stronie http://www.microsoft.com/windows/ie/searchguide/en-en/default.mspx . Po podaniu przyjaznej nazwy, należy kliknąć Install i potwierdzić decyzję w znanym już okienku, ewentualnie zaznaczając, że wyszukiwarka ma być traktowana jako domyślna.

Rys. 6. Dodawanie Search Provider.
Voila! Od tej pory można jej używać.
Ten sam efekt można osiągnąć "ręcznie" poprzez edycję rejestru. W tym celu, w adresie URL wyszukiwarki, zamiast słowa TEST należy wpisać {searchTerms} i wpisać otrzymany ciąg znaków w rejestrze w nowej gałęzi w HKEY_CURRENT_USER, Software, Microsoft, Internet Explorer, Search Scopes. Ważne są wyłącznie pola DisplayName i URL. Nazwa gałęzi może być w praktyce dowolna. Takie ręczne dodanie wymaga restartu przeglądarki.
Należy zdawać sobie sprawę, że jeżeli zresetuje się ustawienia Internet Explorer 7, wszystkie dodane wyszukiwarki zostaną usunięte.
Oczywiste jest, że twórca każdego portalu z wyszukiwarką może chcieć dodać taki mechanizm do swoich stron. Ilość portali, które oferują użytkownikom dostęp do Instant Search jest naprawdę niemała. Każda z nich zapala na pomarańczowo przycisk wyszukiwania, ale większość użytkowników nie zwraca na to uwagi. W zasadzie trudno stwierdzić, dlaczego mechanizm nie jest dostępny na każdej stronie.
Pierwszym krokiem musi być utworzenie pliki XML opisującego wyszukiwarkę. Plik taki ma bardzo prostą składnię i w wersji minimalnej zawiera tylko kilka linii:
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>MSDN</ShortName>
<Description>MSDN Search</Description>
<Url type="text/html" template="http://search.msdn.microsoft.com/search/results.aspx?view=msdn&qu={searchTerms}"/>
</OpenSearchDescription>
Powyższy przykład opisuje wyszukiwarkę w MSDN i sam z niewielkimi poprawkami został ze stron MSDN zacytowany.
Utworzony plik zawiera krótką i pełną nazwę wyszukiwarki oraz URL skonstruowany tak samo, jak był tworzony dla samodzielnego dodania wyszukiwarki w rejestrze. Taki plik XML musi być zapisany na serwerze WWW i dostępny dla każdego odwiedzającego.
Nazwa nie powinna przekraczać 16 znaków, ponieważ rozwijalna lista, na której nazwa jest wyświetlana oferuje stosunkowo niewiele miejsca i przy dłuższych nazwach może nieładnie wyglądać.
Sama definicja wyszukiwarki to dopiero początek. Choć taki plik XML może być dodany przez użytkownika, to cała sztuka polega na tym, by zrobić to automatycznie. Aby to osiągnąć, w nagłówku strony należy umieścić tag "link". Przykładowo może być to:
<link title="MSDN Search" rel="search" type="application/opensearchdescription+xml" href="http://www.example.com/provider.xml">
Tytuł (title) i referencja (href) mogą być zmienione stosownie do potrzeb. Referencja musi wskazywać na zapisany w poprzednim kroku plik XML.
Istnienie takiego tagu sprawia, że okno Instant Search pokaże dostępność wyszukiwarki. Łatwo to sprawdzić w źródle dowolnej strony oferującej taką funkcjonalność.
Webmasterowi strony, na której działa wyszukiwarka, dodanie funkcjonalności wykorzystywanej później przez Instant Search nie powinno zająć więcej niż kilka minut.
Ciekawą opcją jest dodanie wyszukiwarki przez skrypt. Działa to na podobnej zasadzie jak linki czy przyciski typu "Dodaj do ulubionych". Operacja jest dostępna dla użytkownika tak czy inaczej, ale umieszczenie takiego tekstu na stronie może dodatkowo zachęcić użytkowników do skorzystania. Podobnie jak w przypadku "Ulibionych", akcja wymaga działania użytkownika i nie można komuś dodać wyszukiwarki bez jego wiedzy i woli.
Aby dodać Search Provider, należy użyć metody window.external.AddSearchProvider('URL') URL oznacza tu pełną ścieżkę do pliku XML opisującego wyszukiwarkę. Metodę można przypiąć do zdarzenia onclick dla obiektów na stronie. Po kliknięciu, u użytkownika pojawi się znane już okno z pytaniem o potwierdzenie.
Od pewnego czasu rozwiązania Microsoft opierają się coraz mocniej na istniejących już standardach zamiast definiować nowe. Instant Search nie jest tu wyjątkiem. Cały mechanizm jest zgodny ze specyfikacją OpenSearch 1.1 (http://www.opensearch.org/Specifications/OpenSearch/1.1) dzięki czemu istnieje spore prawdopodobieństwo, że będzie szeroko stosowany tak przez twórców stron jak i przez twórców przeglądarek. Zwykłemu użytkownikowi pozostaje się z tego cieszyć. Udanego wyszukiwania!
![]() | Grzegorz Tworek (Konsultant ISCG, MVP) |