Klickspårning

2013-03-14

Med SiteSeeker kan vi fånga upp och registrera klick på sökträffar. Klick är framför allt intressant för redaktörer i deras arbete att förbättra innehållet och därmed sökupplevelsen. Klick påverkar och förbättrar även relevansen för vad som räknas till ett bra sökordsförslag.

Steg för steg

Observera att det tar generellt ett dygn innan klick kommer att visa sig i statistiken.

Denna instruktion gäller version 4.2 av sökintegrationen. Se till att ni kör den senaste version av .NET modulen

Implementation av klickspårning i version 4.2 av SiteSeeker-modulen hanteras av ett par inbyggda javascript. Inlänkningarna av javacripten renderas ut via vår HtmlHelper och metoden SiteSeeker_ClickTracking_Javascripts(). Javascripten hämtas i sin tur från vår HTTP handler som registreras i web.config. Om man bygger sitt eget sökformulär bör man se till så att söksessions-id:t skickas igen när besökaren ställer en ny sökfråga.

Steg 1

I web.config filen:
<httpHandlers>
<add path="*.siteseeker" verb="*" type="SiteSeeker.UI.FactoryHandler, SiteSeeker, Culture=neutral" />
</httpHandlers>

OBS! Ibland händer det att andra handlers "override:ar" vår handler och följdfelet blir att handlern inte kan anropas. Prova då att lägga den först i ordningen.

Steg 2

I <HEAD> avsnittet:
<%var helper = HtmlHelperFactory.Get<XHtmlHelpers>(SearchIndexName);%>
<%= helper.SiteSeeker_Css() %>
<%= helper.SiteSeeker_AutoComplete_Javascripts() %>
<%= helper.SiteSeeker_ClickTracking_Javascripts() %>

Steg 3

I <BODY> avsnittet:
<input type="hidden" value="5CA571D509C386C581222CE02EB84FB1" name="si">

Följande HTML kod renderas automatiskt om du använder dig av våra HtmlHelpers och metoden Result()
Varje träfflista på söksidan (man kan ju ha flera) måste innehålla följande element:

<div class="ess-searchResult" name="ess-responseId-387346491">
<ol>
<li><a class="ess-hitLink" name="ess-hitNumber-1" href="http://mysite.se/link1/" title="link1">Link 1</a></li>
<li><a class="ess-hitLink" name="ess-hitNumber-2" href="http://mysite.se/link2/" title="link2">Link 2</a></li>
<li><a class="ess-hitLink" name="ess-hitNumber-3" href="http://mysite.se/link3/" title="link3">Link 3</a></li>
</ol>
</div>

Selektorn för träfflistan är ess-searchResult och varje träff har selektorn ess-hitLink. För att man ska veta vilken träfflista som avses måste de nycklas.
Siffrorna efter ess-responeId- hämtas från Model.Results[0].ResponseId.
Även träffarna måste nycklas siffran efter ess-hitNumber- hämtas från SearchHit.OrdinalNumberInResult.
För utvalda träffar är css-selektorn ess-bestBet:

<div class"ess-bestBet"><a href="http://somesite.se/">Best bet link</a></div>

Steg 4 - Testa och utvärdera

När dessa delar kommit på plats på söksidan är det dags att kontrollera att klicken registreras.
Detta gör du enklast genom att genomföra några sökningar på söksidan och klicka på några av träffarna. Du behöver sedan vänta någon timme så att statistikverktyget hunnit uppdatera informationen. Gå sedan in i SiteSeeker Admin för den klient som används och titta på Rapport för sökfråga för den sökfråga du ställde. I rapporten finns information om andelen användare som klickat på minst en träff. Står det 0,0% här kan det vara en indikation på att implementationen är felaktig.

OBS! Om antalet klick på orimligt populära sökfrågor är 0 kan det röra sig om att SiteSeeker eller annan crawler indexerar sitt egna sök.
Du hittar mer läsning i ämnet i följande KB-artikel: Begränsning av indexering.

Fortfarande inga klick? Det man kan göra för att försäkra sig om att HTTP anrop görs och klick skickas in korrekt är att använda oss av utvecklarverktygen som finns tillgängliga i webbläsare som Chrome och Firefox. I våra miljöer använder vi oss av Web Developer Tools till Chrome eller Firebug till Firefox. Anropen vi kommer att leta efter för klickspårning kommer att ske via ett anrop till en URL innehållandes strängen siteseeker.clicktracking.

OBS! I Web Developers Tools finns en inställning som heter "Preserve Log upon navigation".
Motsvarande funktion i Firebug heter "Persist".
Det tillåter dig att se tidigare HTTP anrop som står för klicket, vilket annars kan vara svårt att se i och med att man skickas till en ny sida efter klicken, och att loggen med anrop därmed töms.

Du kan även prova att ställa specialsökfrågan siteseeker:version på mallsöksidan i SiteSeeker Admin och där titta efter raden "Registrerat klick på vanliga träffar: ja/nej". Denna nollställs efter indexering så genom att köra en indexering utan sidhämtning (none-indexering) och sedan undersöka denna rad före respektive efter att du ställt en sökfråga och klickat på en träff bör du kunna få en indikation på om det fungerar eller ej.

Ett vanligt problem är att Siteseeker HTTP handlern är felaktigt registrerad i din web.config och då kommer anrop ge HTTP 404, då ingen handler svarar.

Har du frågor rörande implementationen eller lyckas du inte få in några klick i statistiken är du välkommen att kontakta SiteSeeker-supporten – vi finns på support@euroling.se!

Djupdykning

Läs också gärna blogginlägget Kolla klickspårning för korrekt statistik!