SiteSeeker Instant

2011-08-09

För dig som bygger sökning där resultat efterfrågas och genereras utan att sidan laddas om, s. k. instantsökning, har vi i följande guide sammanställt lite tips och råd.

Teknik

Det finns i dagsläget inget inbyggt stöd för s k Instantsökning i SiteSeeker, men du har goda möjligheter att bygga ett eget stöd. En skiss på tänkbar lösning skulle kunna vara:

  1. Användaren börjar skriva en sökfråga
  2. Man använder SiteSeekers funktion för sökordsförslag i sökrutan för att få en lista på sökordsförslag – här kan man använda den färdiga komponent som följer med EPi-modulen
  3. Med hjälp av JavaScript hämtar man det första förslaget…
  4. …gör ett asynkront anrop till en söksida på webbplatsen som inte innehåller något sidramverk (dvs. inget sidhuvud, sidfot, menyer etc)…
  5. …och tar resultatet (dvs HTML-koden) och lägger det i en overlay över sidan man är på (under sökrutan)

Begränsningar och utmaningar

Prestanda

Viktigt är att man i detta läge kontrollerar att prestandan vid sökningen blir acceptabel med tanke på förväntad användning i skarp drift, både vad gäller antalet samtidiga användare och sökfrågor och generering av söksidan som ska hämtas. I och med SiteSeekers cachning av söksvar går det att få helt acceptabel prestanda för de allra flesta sökfrågor.

Loggning och statistik

En annan viktig aspekt vid denna typ av lösning är att kontrollera loggning så att den kan utföras effektivt även med den nya lösningen. Med denna lösning kommer ju mycket fler sökfrågor ställas till SiteSeeker, och i statistiken kommer det att se ut som antalet sökningar är större än vad de egentligen är (och klickfrekvensen kommer verka lägre). Det finns ingen riktigt bra (eller enkel) lösning på detta, men genom att vara lite trixig skulle man kunna logga alla instant-sökningar med en speciell gränssnittsnyckel (Connector.InterfaceIdentifier). När sedan användaren antingen klickar på en träff eller väntar med att skriva mer än 3 sekunder (detta är den gräns Google har) görs en extra loggning på den sökfrågan, men med en annan gränssnittsnyckel.

Dra dig inte för att kontakta supporten om du vill veta mer om denna typ av sökning och vad ni skulle kunna göra!