# Slim Live Search: volledige gids

> Overzicht en vereisten DF Live Search vervangt de zoekfunctie van je winkel door een direct-zoekpaneel. Vóór het typen toont het de recente zoekopdrachten van de bezoeker, populaire zoekopdrachten en aanbevolen…

- Pagina: <https://www.datafirefly.com/nl/documentation/dflivesearch/>
- Taal: nl
- Bijgewerkt op: 2026-11-01
- Andere talen: [fr](https://www.datafirefly.com/documentation/dflivesearch/index.md), [en](https://www.datafirefly.com/en/documentation/dflivesearch/index.md), [es](https://www.datafirefly.com/es/documentation/dflivesearch/index.md), [de](https://www.datafirefly.com/de/documentation/dflivesearch/index.md), [it](https://www.datafirefly.com/it/documentation/dflivesearch/index.md), [pl](https://www.datafirefly.com/pl/documentation/dflivesearch/index.md), [pt](https://www.datafirefly.com/pt/documentation/dflivesearch/index.md)
- Index: <https://www.datafirefly.com/nl/documentation/llms.txt>

## Overzicht en vereisten

DF Live Search vervangt de zoekfunctie van je winkel door een direct-zoekpaneel. Vóór het typen toont het de recente zoekopdrachten van de bezoeker, populaire zoekopdrachten en aanbevolen producten. Tijdens het typen biedt het aanvulling in het veld, suggesties en het resultatenraster met direct toevoegen aan de winkelwagen. Filters (prijs, beschikbaarheid, categorieën, merken, attributen, kenmerken) en sortering zijn optioneel beschikbaar.

- Compatibel met PrestaShop 1.7.8 tot 9.x, de thema's Hummingbird, Classic en afgeleiden, en het Warehouse-thema (iqit).
- PHP 7.4 tot 8.5.
- Meertalig (FR, EN, ES, DE, IT, PT, PL, NL) en multistore.
- Geen overrides, geen externe bronnen.

![DF Live Search-paneel: recente zoekopdrachten, populaire zoekopdrachten en aanbevolen producten](https://www.datafirefly.com/wp-content/uploads/2026/11/direct-zoeken-recente-populaire-zoekopdrachten-livesearch-nl.webp)

DF Live Search-paneel: recente zoekopdrachten, populaire zoekopdrachten en aanbevolen producten

## Installatie en update

1. Download `dflivesearch-2.1.0.zip` vanuit je klantaccount.
2. Open in de back-office **Modules > Modulebeheer**, klik op **Een module uploaden** en sleep het archief erin.
3. Klik op **Configureren**.

Bij de installatie maakt de module haar tabellen aan, bouwt ze haar eigen zoekindex en correctiewoordenboek op en vult ze gangbare synoniemen in elke taal vooraf in. Het zoeken werkt meteen: standaard opent het zoekveld van je thema het paneel.

**Update vanaf een 1.x-versie**: upload de nieuwe zip in Modulebeheer en start de update. Je instellingen, synoniemen en statistieken blijven behouden. Nieuwe opties behouden het gedrag van 1.x (modulebalk en themavelden, referenties zichtbaar) en **de filters blijven uitgeschakeld** tot je ze inschakelt. Reeds opgeslagen IP-adressen worden vervangen door een anonieme hash.

Leeg na een update de cache van PrestaShop (Geavanceerde parameters > Prestaties). Als je thema CSS- en JS-bestanden samenvoegt (CCC), wordt het nieuwe script dan meteen geladen.

## Algemene instellingen

De configuratiepagina is in tabbladen ingedeeld, met rechts een **live voorbeeld** dat je instellingen volgt (kleuren, indeling, inhoud van de kaarten). Het tabblad **Algemeen** bevat:

- **Indeling van het paneel**: _Overlay_ (groot paneel boven de pagina) of _Uitklapmenu_ (opent onder de zoekbalk, schermvullend op mobiel).
- **Zoekbalk**: _Themabalk_ (het zoekveld van het thema opent het paneel, aanbevolen), _Modulebalk_ (vervangt de standaard zoekbalk van PrestaShop) of _Beide_ (gedrag van 1.x).
- **Plaatshoudertekst van het veld** per taal, **tekens voordat het zoeken start**, **producten per pagina** (de volgende worden geladen met „Meer producten tonen”).
- **Sneltoets**: Ctrl+K (⌘K op Mac) of `/` opent het zoeken vanaf elke pagina.
- **Deze zoekmachine gebruiken op de resultatenpagina**: de volledige resultatenpagina van PrestaShop toont dan dezelfde producten, in dezelfde volgorde, als het paneel.

![Back-office: algemene instellingen met live voorbeeld](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-algemene-instellingen-voorbeeld-livesearch-nl.webp)

Back-office: algemene instellingen met live voorbeeld

![Uitklapmenu dat opent vanuit de zoekbalk](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-uitklapmenu-livesearch-nl.webp)

Uitklapmenu dat opent vanuit de zoekbalk

## Weergave en productkaarten

- **Hoofdkleur** en kleur bij aanwijzen (knoppen, actieve filters, focus), met voorgestelde kleuren.
- **Maximale breedte van het paneel**: bijvoorbeeld `1320px`, `100%` of `90vw`.
- **Modulebalk**: hoogte, maximale breedte en afronding (0 = rechthoekig, 50 = pil).
- **Productkaarten**: prijzen, kortingen (doorgestreepte prijs en percentage), merk, referentie, knop „In winkelwagen”, aantalkeuze, afbeeldingsformaat.

De regels van PrestaShop gelden altijd: catalogusmodus, klantgroepen zonder prijzen en producten met „Prijs tonen” uitgeschakeld tonen nooit een prijs of winkelwagenknop. Prijzen volgen de groep van de bezoeker (incl. of excl. btw), de kortingen en de valuta.

![Back-office: kleuren, zoekbalk en inhoud van de productkaarten](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-weergave-instellingen-livesearch-nl.webp)

Back-office: kleuren, zoekbalk en inhoud van de productkaarten

## Het zoekpaneel in de winkel

### Vóór het typen

Het tabblad **Leeg paneel** bepaalt wat bezoekers zien bij het openen:

- **Recente zoekopdrachten**: alleen in de browser van de bezoeker opgeslagen, één voor één of allemaal tegelijk te verwijderen.
- **Populaire zoekopdrachten**: automatisch (statistieken), je eigen lijst per taal of je lijst aangevuld met de statistieken. Een zoekterm verschijnt alleen als hij producten heeft gevonden voor een minimumaantal verschillende bezoekers (standaard 2): zo kan niemand tekst in deze lijst publiceren. Je kunt woorden uitsluiten; links en e-mailadressen zijn altijd uitgesloten.
- **Aanbevolen producten**: bestsellers en daarna nieuwe producten, je eigen selectie (zoeken, slepen of pijlen voor de volgorde) of personalisatie voor ingelogde klanten.

### Tijdens het typen

Het paneel toont de **aanvulling in het veld** (accepteren met Tab of →), suggestielabels, overeenkomende categorieën en merken, het aantal resultaten en het productraster. Gezochte woorden staan vet. Je navigeert met het toetsenbord door de suggesties (pijlen, Enter, Esc) en het aantal resultaten wordt aan schermlezers doorgegeven.

![Een zoekopdracht typen: aanvulling in het veld, suggesties en directe resultaten](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-automatisch-aanvullen-suggesties-livesearch-nl.webp)

Een zoekopdracht typen: aanvulling in het veld, suggesties en directe resultaten

### In de winkelwagen

De winkelwagenknop gebruikt de winkelwagencontroller van PrestaShop: voorraad, minimumaantallen en winkelwagenregels worden gerespecteerd. In het paneel verschijnt een bevestiging met een link naar de winkelwagen, en de winkelwagen in de header wordt bijgewerkt. Producten met combinaties tonen „Opties kiezen”, dat de productpagina opent.

![Direct in de winkelwagen vanuit de zoekresultaten](https://www.datafirefly.com/wp-content/uploads/2026/11/in-winkelwagen-vanuit-zoeken-livesearch-nl.webp)

Direct in de winkelwagen vanuit de zoekresultaten

## Filters en sortering (optioneel)

De filters zijn **standaard uitgeschakeld**. Schakel ze in op het tabblad **Filters en sortering**, vink de te tonen filters aan en sleep ze (of gebruik de pijlen) om hun volgorde te bepalen:

- **Prijs**: dubbele schuifregelaar en min/max-velden, in de valuta en btw-weergave van de bezoeker.
- **Beschikbaarheid**: producten op voorraad.
- **Categorieën** en **merken**.
- **Attributen** en **kenmerken** van je catalogus naar keuze (kleurstalen voor kleuren).

De tellers worden bij elke keuze bijgewerkt en waarden van hetzelfde filter kunnen samen worden aangevinkt. Lange lijsten krijgen een zoekveld en een link „Meer tonen”. Actieve filters verschijnen als labels boven de resultaten. Het sorteermenu biedt relevantie, prijs oplopend of aflopend, nieuw, bestsellers en naam; kies de aangeboden sorteringen op hetzelfde tabblad.

![Zoekresultaten met filters op prijs, beschikbaarheid, categorie, merk en kleur](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekresultaten-met-filters-livesearch-nl.webp)

Zoekresultaten met filters op prijs, beschikbaarheid, categorie, merk en kleur

![Actieve filters met labels en bijgewerkte tellers](https://www.datafirefly.com/wp-content/uploads/2026/11/actieve-zoekfilters-tellers-livesearch-nl.webp)

Actieve filters met labels en bijgewerkte tellers

![Back-office: filters inschakelen en ordenen, sorteeropties](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-filters-sortering-instellingen-livesearch-nl.webp)

Back-office: filters inschakelen en ordenen, sorteeropties

## Op mobiel

Op mobiel opent het paneel schermvullend, gaat het raster naar twee kolommen en openen de filters in een **lade** met een knop „N resultaten tonen”. De suggesties scrollen horizontaal onder het veld.

![Zoekpaneel op mobiel vóór het typen](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekpaneel-mobiel-livesearch-nl.webp)

Zoekpaneel op mobiel vóór het typen

![Zoekresultaten op mobiel](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekresultaten-mobiel-livesearch-nl.webp)

Zoekresultaten op mobiel

![Zoekfilters in een lade op mobiel](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekfilters-mobiel-lade-livesearch-nl.webp)

Zoekfilters in een lade op mobiel

## Relevantie en tolerantie voor typfouten

Altijd actief: accenten en hoofdletters genegeerd, meervouden in de 8 talen („lampen” vindt „lamp”), woorden in elke volgorde, woorden met koppelteken („t-shirt” = „tshirt”), overeenkomst al tijdens het typen, referenties van producten en combinaties, EAN, UPC, MPN en leveranciersreferenties. Is de zoekterm de referentie van een combinatie, dan opent het resultaat precies die combinatie.

Het tabblad **Relevantie** regelt:

- **Suggesties en aanvulling** en hun maximumaantal.
- **Zoeken in merken**: „merk + product” werkt ook als het merk niet in de naam staat.
- **Tolerantie voor typfouten** en maximaal aantal fouten per woord (2 aanbevolen; woorden van 4 letters of minder staan er één toe). Vindt een zoekopdracht niets, dan worden de dichtstbijzijnde woorden uit de catalogus geprobeerd.
- **Bezoekers informeren over correcties**: „Resultaten voor… In plaats daarvan zoeken naar…” met een link naar de oorspronkelijke spelling.
- **Producten op voorraad eerst** en **bestsellers eerst**, bij vergelijkbare relevantie.

![Tolerantie voor typfouten: ‘Resultaten voor… In plaats daarvan zoeken naar…’](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-typfouten-correctie-livesearch-nl.webp)

Tolerantie voor typfouten: ‘Resultaten voor… In plaats daarvan zoeken naar…’

## Synoniemen en doorverwijzingen

Voer op het tabblad **Synoniemen en doorverwijzingen** één groep synoniemen per regel en per taal in:

```
bank, sofa, canapé
chocolade => truffel, bonbons
```

Een regel met komma's verbindt gelijkwaardige woorden: elk woord vindt de andere. Een regel met `=>` werkt in één richting: „chocolade” vindt ook de woorden rechts, niet andersom. Meervouden worden ondersteund en een synoniem vindt alleen hele woorden.

**Doorverwijzingen** sturen een zoekterm direct naar een pagina: „levering” naar je verzendpagina, een merk naar zijn pagina… Kies „Exacte zoekterm” of „Bevat deze woorden”, de taal en de URL (volledig adres of een pad van je winkel dat met `/` begint). Het paneel toont dan een snelkoppeling, Enter opent de pagina en ook de resultatenpagina verwijst door. Het aantal keren dat elke doorverwijzing is gebruikt, wordt getoond.

![Back-office: synoniemen per taal en doorverwijzingen van zoektermen](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-synoniemen-doorverwijzingen-livesearch-nl.webp)

Back-office: synoniemen per taal en doorverwijzingen van zoektermen

![Een zoekterm doorverwezen naar een pagina van de winkel](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekterm-doorverwijzing-livesearch-nl.webp)

Een zoekterm doorverwezen naar een pagina van de winkel

## Zoekopdrachten zonder resultaat

Als niets overeenkomt, stelt het paneel populaire zoekopdrachten en aanbevolen producten voor in plaats van een lege pagina. Zijn er filters actief, dan nodigt een melding uit om ze te wissen. Deze zoektermen verschijnen in het dashboard, met een knop om met één klik een synoniem of doorverwijzing aan te maken.

![Zoekopdracht zonder resultaat met populaire zoekopdrachten en aanbevolen producten](https://www.datafirefly.com/wp-content/uploads/2026/11/zoeken-zonder-resultaat-suggesties-livesearch-nl.webp)

Zoekopdracht zonder resultaat met populaire zoekopdrachten en aanbevolen producten

## Slim zoeken (optioneel)

Twee optionele lagen verbeteren de resultaten verder dan het matchen van woorden. Beide staan standaard uit, op het tabblad **Slim zoeken**.

### Zelflerend (zonder externe dienst)

De module leert van de zoekstatistieken van je eigen winkel:

- **Kliks en bestellingen**: voor een zoekopdracht stijgen de producten die meerdere verschillende bezoekers openden en kochten in de resultaten.
- **Herformuleringen**: wanneer bezoekers die niets vonden direct daarna slagen met een andere zoekopdracht, wordt die herformulering geleerd en krijgen de volgende bezoekers de resultaten ervan („Resultaten voor… In plaats daarvan zoeken naar…”).

Een signaal telt pas als een minimumaantal verschillende bezoekers het gaf (standaard 3): niemand kan in z'n eentje een product pushen. Het leren wordt elke 6 uur bijgewerkt, via de nachtelijke opdracht of met **Nu bijwerken**. Geleerde herformuleringen staan in een lijst met de knoppen **Als synoniem gebruiken** en **Negeren**.

### Semantisch zoeken (hybride rangschikking)

Semantisch zoeken begrijpt de betekenis van een zoekopdracht: „cadeau voor een koffieliefhebber” vindt mokken, „iets om in te schrijven” vindt notitieboeken, ook als die woorden niet in de productnamen staan. Het gebruikt een embeddingsdienst die compatibel is met de OpenAI-API: OpenAI, Mistral AI of je eigen server (Ollama…), met één klik ingesteld.

1. Schakel de optie in, kies de aanbieder, vul de API-sleutel in (opgeslagen in je database, nooit getoond in de winkel) en sla op.
2. Klik op **Verbinding testen** en daarna op **Vectoren genereren**. Het tabblad toont de voortgang en een schatting van het te versturen volume. Daarna worden alleen nieuwe of gewijzigde producten opnieuw verstuurd: met de knop, de nachtelijke opdracht of automatisch bij het opslaan van een product.

De rangschikking is hybride: de woordscore en de gelijkenis worden gecombineerd met een instelbaar gewicht (standaard 40 %), en producten die minder lijken dan de minimale gelijkenis worden niet toegevoegd. Standaard draait semantisch zoeken alleen als het matchen van woorden weinig producten vindt; referenties en EAN-codes gebruiken altijd woorden. Is de dienst traag of onbereikbaar, dan antwoordt het zoeken na de maximale wachttijd met woorden. Bij 10.000 producten duurt het vectorzoeken zelf ongeveer 15 ms.

Indien ingeschakeld, worden de tekst van je producten (naam, merk, categorieën, kenmerken, korte beschrijving) en de zoekopdrachten van bezoekers naar de gekozen dienst gestuurd. Er worden geen persoonsgegevens verstuurd. Kies een aanbieder die past bij je privacybeleid, of je eigen server.

## Merchandising

Op het tabblad **Merchandising** bepaal je wat bezoekers zien voor bepaalde zoekopdrachten. Een regel geldt voor exacte zoekopdrachten, voor zoekopdrachten met bepaalde woorden of voor elke zoekopdracht, in één taal of alle, en kan tussen twee data worden ingepland. Meervouden en accenten maken niet uit.

- **Bovenaan vastgezet**: producten die eerst verschijnen, in jouw volgorde, ook als de zoekfunctie ze niet zou vinden.
- **Verborgen**: producten die nooit verschijnen voor deze zoekopdrachten.
- **Versterken of verlagen**: van -100 % tot +100 % voor een product, een categorie, een merk, producten op voorraad of uitverkocht, nieuwe producten of aanbiedingen.
- **Banner**: een tekst, met optionele afbeelding en link, boven de resultaten.

Regels gelden in de volgorde van de lijst. Het **Voorbeeld van de rangschikking** toont voor een zoekopdracht en een taal de producten in de volgorde waarin bezoekers ze krijgen, en waarom: woorden, betekenis, leren, vastgezette producten, versterkingen en verborgen producten.

## Index en prestaties

De module zoekt in haar eigen index (één regel per product, winkel en taal), die automatisch wordt bijgewerkt bij het opslaan van een product, combinatie, voorraad, specifieke prijs, categorie of merk. Alleen actieve producten die „overal” of „alleen in zoekresultaten” zichtbaar zijn, worden geïndexeerd, en categorieën die voor bepaalde klantgroepen zijn gereserveerd, worden gerespecteerd.

- **Index opnieuw opbouwen**: handig na een import rechtstreeks in de database.
- **Geplande opbouw**: de cron-opdracht wordt kant-en-klaar getoond, bijvoorbeeld `0 3 * * * php /pad/naar/winkel/modules/dflivesearch/cli/reindex.php`. Elke nacht aanbevolen als je prijsregels met data gebruikt.
- **Resultatencache**: identieke zoekopdrachten worden uit de cache beantwoord (standaard 5 minuten, per taal, valuta en klantgroep). De cache wordt automatisch geleegd wanneer de catalogus verandert.

Geen aanroep bij het laden van pagina's: de gegevens van het paneel worden geladen wanneer het opent. Op onze testcatalogus van 5.000 producten antwoordt een zoekopdracht in 57–80 ms (8 producten) en in 41–45 ms uit de cache, opstarttijd van PrestaShop inbegrepen.

![Back-office: zoekindex, cache en geplande opbouw](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekindex-prestaties-livesearch-nl.webp)

Back-office: zoekindex, cache en geplande opbouw

## Zoekdashboard en waarschuwingen

Het menu **Catalogus > Zoekstatistieken** (of **Klanten** in een winkel die vanaf 1.x is bijgewerkt) toont voor de gekozen periode en taal:

- zoekopdrachten, unieke zoektermen, aandeel zoekopdrachten met resultaten, klikratio, zoekopdrachten gevolgd door een bestelling binnen 24 uur, zoekopdrachten zonder resultaat, elk met de trend ten opzichte van de vorige periode;
- een grafiek van de zoekopdrachten per dag;
- de topzoekopdrachten met klikratio en bestellingen;
- de zoekopdrachten zonder resultaat met de knoppen **+ Synoniem** en **→ Doorverwijzing**;
- de producten die het vaakst vanuit het zoeken worden geopend;
- CSV-exports (top, zonder resultaat, alle zoekopdrachten).

Er ontstaat een **waarschuwing** wanneer dezelfde zoekterm zonder resultaat binnen 7 dagen wordt gezocht door een door jou gekozen aantal verschillende bezoekers (standaard 5). Ze kan per e-mail (8 talen) naar het adres van je keuze worden verzonden.

![Zoekdashboard: klikratio, zoekopdrachten zonder resultaat, topzoekopdrachten](https://www.datafirefly.com/wp-content/uploads/2026/11/zoekstatistieken-dashboard-livesearch-nl.webp)

Zoekdashboard: klikratio, zoekopdrachten zonder resultaat, topzoekopdrachten

## Privacy en beveiliging

- IP-adressen van bezoekers worden nooit opgeslagen: alleen een gezouten hash dient om unieke bezoekers te tellen. Recente zoekopdrachten blijven in de browser van de bezoeker.
- Het opgeslagen aantal resultaten is door de server ondertekend: de statistieken kunnen niet vanuit de browser worden vervalst.
- Het zoek-endpoint is beperkt tot 120 zoekopdrachten per minuut per bezoeker.
- Elke tekst die een bezoeker typt, wordt bij weergave beveiligd: in het paneel, in de back-office en in de waarschuwingsmails.
- De geschiedenis wordt standaard 90 dagen bewaard (instelbaar) en daarna automatisch verwijderd.

## Verwijderen

Standaard verwijdert het verwijderen van de module haar tabellen, instellingen, tabbladen, hooks en cache. Schakel **Gegevens bewaren bij verwijderen** in (tabblad Statistieken en waarschuwingen) om statistieken, synoniemen, doorverwijzingen en instellingen te bewaren voor een latere herinstallatie.

## FAQ en probleemoplossing

### Er staan twee zoekbalken in de header

Kies op het tabblad Algemeen _Themabalk_ (het veld van het thema opent het paneel) of _Modulebalk_ (de standaard zoekbalk van PrestaShop wordt verborgen).

### Een product wordt niet gevonden

Controleer of het actief is, „overal” of „alleen in zoekresultaten” zichtbaar is en of een van zijn categorieën toegankelijk is voor de groep van de bezoeker. Bouw na een rechtstreekse database-import de index opnieuw op (tabblad Index en prestaties).

### De gefilterde prijs wijkt af van de getoonde prijs

Het prijsfilter en de prijssortering gebruiken de geïndexeerde publieke prijs. Prijzen per groep of klant worden correct op de kaarten getoond. Gebruik je prijsregels met data, plan dan een nachtelijke opbouw van de index.

### De populaire zoekopdrachten blijven leeg

Een zoekterm verschijnt pas nadat hij in 30 dagen producten heeft gevonden voor het minimumaantal verschillende bezoekers. Verlaag dat minimum of voer je eigen lijst in (tabblad Leeg paneel).

### Het nieuwe ontwerp verschijnt niet na de update

Leeg de cache van PrestaShop. Als je thema CSS- en JS-bestanden samenvoegt (CCC), worden de samengevoegde bestanden opnieuw aangemaakt.

### Het zoeken meldt „Te veel zoekopdrachten in korte tijd”

De limiet van 120 zoekopdrachten per minuut beschermt je server tegen bots. Een normale bezoeker bereikt die nooit; controleer of geen testtool of bot het endpoint in een lus bevraagt.

### Hoe open ik het zoeken vanuit een knop van mijn thema?

Voeg het attribuut `data-dflivesearch-trigger` (of de klasse `dflivesearch-trigger`) aan de knop toe, of roep in JavaScript `window.dflivesearchOpen('zoekterm')` aan. De zoekiconen van het Warehouse-thema worden automatisch ondersteund.

### Stuurt semantisch zoeken mijn gegevens naar een externe dienst?

Alleen als je het inschakelt: productteksten en zoekopdrachten van bezoekers gaan naar de aanbieder die je kiest, nooit persoonsgegevens. Met je eigen server (Ollama) verlaat niets je infrastructuur. Zelflerend en merchandising gebruiken geen externe dienst.

### Hoe zet ik een product bovenaan voor een zoekopdracht?

Voeg op het tabblad Merchandising een regel toe met de zoekopdracht, zet het product vast en sla op. Controleer het resultaat met het voorbeeld van de rangschikking.
