A Firefox böngésző egyre növekvő népszerűsége miatt ajánlott annak lehetőségeit figyelni, kihasználni.
Az egyik ilyen lehetőség, hogy egyéni keresőket is felvihetünk a böngészőbe. Ennek megoldásában próbál segíteni ez a kis leírás.
A Firefox 1-ben a keresőválasztónál megjelenik egy „Add engines” opció, ami egy a Mozilla add-onok közé küldi a látogatót.
A Firefox 2 azonban ezen a téren is újított: az oldalak készítői az oldalukhoz tartozó keresőről információkat tehetnek közzé, amelyeket a Firefox képes értelmezni, és a keresőt használni.
Jó példa erre a működésre a Wikipedia. Ha a FF 2-es verzióját használjuk egy új opció válik elérhetővé a kereső-választáskor:
„Add http://en.wikipedia.org/w/opensearch_desc.php”. És ami az egészben a legjobb: egy ilyet nem is nehéz megvalósítani.
A keresőről az információt XML fileban, az ún. OpenSearch formátumban tudjuk a böngészőnek biztosítani. A teljes specifikációt megtalálhatjuk a http://a9.com/-/spec/opensearch/1.1/ címen, a példánkban igyekszünk a lehető legegyszerűbb fájl létrehozni.
Előljáróban annyit, hogy a fájl MIME típusa application/opensearchdescription+xml, de ez még nincs regisztrálva, és – a Wikipedia példája alapján – a FF nem követeli meg ezt – ajánlott azonban a megfelelő fejléccel kiküldeni.
<?php header('Content-type: application/opensearchdescription+xml'); |
A Wikipedia OpenSearch leírófájlját használhatjuk kiindulási pontnak, ajánlott azonban átolvasni a fentebb írt specifikációt, mivel így pontosítani tudjuk keresőnk leírását.
<?xml version="1.0"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <ShortName>Wikipedia</ShortName> <Description>Wikipedia</Description> <Image height="16" width="16" type="image/x-icon">http://en.wikipedia.org/favicon.ico</Image> <Url type="text/html" method="get" template="http://en.wikipedia.org/w/index.php?title=Special:Search&search={searchTerms}"/> </OpenSearchDescription> |
Az első sor egyértelmű, a szokásos XML kezdőtag. Az OpenSearchDescription tartalmazza majd a keresőnk leírását.
A ShortName és Description egyértelmű, keresőnk rövid nevét és esetleges leírását írhatjuk ide. Az image-ben megadott kép fog megjelenni a keresőnk ikonjaként a böngészőben.
A specifikáció ugyan nem teszi kötelezővé, de ajánlja a 16*16-os ico fájlok, vagy a 64*64 jpeg fájlok használatát.
És ezzel el is értünk a lényegi részhez. Az Url, és az abban található további tagok írják le a keresőnk viselkedését. Fontos megjegyezni, hogy ezek mindig teljes elérési utat kell, hogy adjanak, és nem relatívat!
Mint látjuk a Wikipedia GET metódust használ a keresendő kifejezés átvitelére, azonban van lehetőség POST használatára is:
<?xml version="1.0"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <ShortName>BlackY</ShortName> <Description>BlackY</Description> <Image height="16" width="16" type="image/x-icon">http://en.wikipedia.org/favicon.ico</Image> <Url type="text/html" method="post" template="http://en.wikipedia.org/w/index.php?title=Special:Search&search={searchTerms}"> <Param name="searchString" value="{searchTerms}" /> </Url> </OpenSearchDescription> |
Ez már POST-al küldené el az adatokat, ahol a searchString tartalmazná a kereső-kifejezéseket. A {searchTerms}-en kívűl használható még rengeteg egyéb paraméter, újakat is generálhatunk, stb.
Mostanra egyelőre legyen elég annyi, hogy a {paraméter} formában megadott paraméterek kötelezőek – és ha nincs megadva, és nincs alap értékük a keresés nem hajtódik végre -, míg a {paraméter?} forma szerint elhagyhatók.
Ha a példák és/vagy a dokumentáció alapján összeállítottuk a kereső-leírónkat nincs más dolgunk, mint hogy figyelmeztessük az FF-et, hogy van az oldalon kereső is:
<link rel="search" type="application/opensearchdescription+xml" href="opensearch.xml" /> |
Az opensearch.xml helyére természetesen az előzőkben összeállított XML fájlunk elérési útját írjuk! Ezután a FireFox 2-t betöltve már felvihetjük a keresőnket, és kerestethetünk vele…
A tutorial.hu oldal esetében az kereső-leíró fájl így néz ki:
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <ShortName>tutorial.hu</ShortName> <Description>photoshop tutorial leírások</Description> <Url type="text/html" method="get" template="http://www.tutorial.hu/search/node/{searchTerms}"/> <InputEncoding>ISO-8859-2</InputEncoding> <Image width="16" height="16">http://www.tutorial.hu/misc/favicon.ico</Image> <SearchForm>http://www.tutorial.hu/kereses</SearchForm> <UpdateUrl>http://www.tutorial.hu/opensearch.xml</UpdateUrl> <IconUpdateUrl>http://www.tutorial.hu/misc/favicon.ico</IconUpdateUrl> <UpdateInterval>3</UpdateInterval> </OpenSearchDescription> |
A lapban pedig így hivatkozunk rá:
[…] felhasználók (pl görög, ciril betük) fontos, hogy az UTF-8-at válasszuk. A mi esetünkben az OpenSearch is UTF-8 alapú (ha nem ismernéd ezt a szolgáltatást, ajánlom figyelmedbe a cikket, amit a […]