...
Reference | Titel | Forfatter | Version |
D0160 – Brugergrænseflade-design | Johannes Lund | 1.0 |
Indholdsfortegnelse
Table of Contents |
---|
Anchor | ||||
---|---|---|---|---|
|
Formålet med dette dokument er at beskrive søgefunktionaliteten, som er implementeret på Jobindsats.dk. Dokumentet skal give et fyldestgørende overblik over, hvilken logik der er grundlaget for søgefunktionaliteten, og hvordan resultater fremsøges og præsenteres på baggrund af brugerinputs.
Anchor | ||||
---|---|---|---|---|
|
Dokumentet er tiltænkt udviklere, som skal vedligeholde søgefunktionaliteten, og foretage ændringer i kildekoden. Informationen tilgængelig i dokumentet er også relevant for andre tekniske stakeholders, der ønsker indgående kendskab til søgefunktionalitetens implementering.
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Søgefunktionaliteten kan anvendes fra alle sider på Jobindsats, idet et simpelt søgefelt optræder i topbaren.
...
Anchor | ||||
---|---|---|---|---|
|
Selve søgesiden indeholder yderligere funktioner sammenlignet med søgefeltet i topbaren. Den kan tilgås ved at bruge søgeknappen til højre for søgefeltet i topbaren. Indholdet i søgefeltet i topbaren sendes med til søgesiden, hvor det fremgår i søgefeltet herpå. Hvis søgefeltet er tomt, fremsøges alle søgbare sider.
...
De valgbare sidekategorier stemmer direkte overens med sektionerne i topbaren. Hvilke undersider, der kan fremsøges, er uddybet i afsnit 3.2 Søgbare sider
...
Anchor | ||||
---|---|---|---|---|
|
Hvert søgeresultat vises på to linjer på følgende format:
...
For nyheder vises publiceringsdatoen i stedet for ændringsdatoen.
Anchor | ||||
---|---|---|---|---|
|
Søgestreng, valg af kategori og valg af antal resultater opdateres i sidens URL. Det er derfor muligt at gemme en søgning ved at gemme den tilsvarende URL, og ligeledes dele en specifik søgning med andre personer gennem samme URL.
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Det er muligt at fremsøge:
...
Uddybende forklaring af hvad disse sider dækker over kan findes i D0160.
Anchor | ||||
---|---|---|---|---|
|
Hvis følgende felter indeholder ét eller flere af søgeordene i søgestrengen, vil siden de fremgår på optræde i søgeresultatet:
...
Hvert felt har forskellig vægtning, nærmere beskrevet i afsnit Boosting.
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
De søgbare felter er vægtet (boosted) forskelligt ud fra hårdt satte værdier i kildekoden. Deres vægtning er afgørende for, rækkefølgen hvori de fremsøgte resultater sorteres. Dvs. at et match på et højt vægtet felt vil bringe resultatet relativt længere op i søgeresultatet, sammenlignet med et match på et lavt vægtet felt.
...
Ved at vægte tags relativt højt, er det muligt at bruge tags til at fremhæve særligt relevante sider i søgeresultatet.
Anchor | ||||
---|---|---|---|---|
|
Der anvendes synonymer på udvalgte specialkarakterer, da den bagvedliggende søgefunktionalitet ikke understøtter nordiske bogstaver og andre specialtegn
Tegn | Synonym |
Æ | Ae |
Ø | O |
Å | A |
æ | ae |
ø | o |
å | a |
- | [Mellemrum] |
( | [Mellemrum] |
) | [Mellemrum] |
? | [Mellemrum] |
. | [Mellemrum] |
Anchor | ||||
---|---|---|---|---|
|
Sorteringen af søgeresultaterne afhænger af, om søgefeltet er tomt.
Anchor | ||||
---|---|---|---|---|
|
Ved et tomt søgefelt foretages sorteringen udelukkende på baggrund af ændringsdato og -tidspunkt for de fremsøgte sider, som vil være sorteret fra nyeste til ældste. Dette gælder også nyheder, selvom den dato, der vises ud fra en nyhed er publiceringsdatoen. Der kan derfor være uoverensstemmelse mellem den viste dato og rækkefølgen for nyheder.
Ændring af dropdowns (kategori og sideantal) vil ikke påvirke sorteringen, så længe søgefeltet er tomt.
Anchor | ||||
---|---|---|---|---|
|
Når der er indhold i søgefeltet, vil sorteringen ske på baggrund af den score, der tildeles hver enkelt side, hvor et match findes. Sorteringen er i dette tilfælde således uafhængig af ændringsdatoen.
Scoren afhænger af, hvor mange gange hvert enkelt søgeord optræder i et søgbart felt på siden. Scoren justeres relativt ud fra den pålagte vægtning (boosting), nærmere beskrevet i afsnit Boosting.
Anchor | ||||
---|---|---|---|---|
|
Søgningen er implementeret med Examine, og der er taget inspiration i følgende ressourcer, hvor yderligere indgående dokumentation er tilgængelig:
...
Examine er inbygget I Umbraco, og baseret på Lucene indeksering, som sørger for at lave et søgbart eksternt index over alle sider. Det er også Examine der tildeler hvert enkelt resultat den score, som bestemmer sorteringsrækkefølgen.
Anchor | ||||
---|---|---|---|---|
|
Brugerens input i søgefeltet gemmes som en streng, hvor alle tegn angivet i afsnittet 3.5 Synonymer erstattes med deres synonym. Herefter splittes strengen på mellemrum til et array, der bruges til at matche imod indholdet på alle søgbare sider.
Anchor | ||||
---|---|---|---|---|
|
Søgesiden er opbygget af cshtml, hvor hovedindholdet består af et lit element (ji-pagination-element.ts).
...