Loentje.com
Loentje.com is ontstaan uit de jarenlange passie van Leon van den Berg voor klassieke en youngtimer BMW’s. Wat begon als een hobby, groeide uit tot een vertrouwd adres voor liefhebbers van het merk. Of je nu op zoek bent naar onderdelen, automobilia of advies: Loentje.com helpt je om je BMW-hobby betaalbaar en leuk te houden.
In onze webshop vind je nieuwe onderdelen, en ons ruime aanbod tweedehands onderdelen staat op Marktplaats. Heb je zelf een klassieke BMW of onderdelen te koop? Neem gerust contact met ons op – we denken graag met je mee.
Dit is een herschreven, complete blauwdruk op basis van je originele plan, aangevuld met best practices voor taxonomie, filtering, OEM-zoek, performance, SEO en meertaligheid. Het is meteen uitvoerbaar als implementatiedocument.
Doel: vindbaarheid, schaalbaarheid en duidelijke navigatie.
Categorieën (onderdelen)
Hoofdonderdelen als primaire hiërarchie:
Motor & onderdelen
Versnellingsbak
Verlichting
Remsysteem
Interieur
Exterieur
Elektronica
Airco & verwarming
Richtlijn: maak alleen subcategorieën waar minimaal 8–12 producten verwacht worden. Anders met filters oplossen.
Modelstructuur (custom taxonomy of productcategorie – kies één en blijf consistent)
Merk > Serie > Generatie/Chassis
Voorbeeld: BMW > 3-Serie > E30
Gebruik chassis-codes (E30, E36, F30, G20) als kern, omdat onderdelen vaak generiek per chassis passend zijn.
Compatibiliteit
Onderdelen kunnen op meerdere modellen/generaties passen.
Oplossing: gebruik een aparte “Compatibiliteit”-taxonomie of ACF-velden (fitment) zodat één product aan meerdere modellen/generaties gekoppeld kan worden zonder duplicatie.
Primaire categorie
Stel per product een primaire onderdeelcategorie in voor SEO (canonical en breadcrumbs).
Doel: krachtige filtering, consistente data en structured data.
Verplichte attributen
Merk: BMW
Serie: 1/2/3/4/5/6/7/X/Z/M
Model/Chassis: E30, E36, F30, G20, etc.
Bouwjaar: 4-cijferig bereik (bijv. 1988–1994)
Brandstof: Benzine, Diesel, Hybride, EV
Versnellingsbak: Handgeschakeld, Automaat
Motorcode: M10, M42, N47, B48, etc.
OEM-nummer: exacte OEM(s)
Conditie: Gebruikt, Gereviseerd, Nieuw
Positie: Links, Rechts, Voor, Achter, Set
Carrosserie: Sedan, Coupé, Cabrio, Touring
Kleur/Materiaal (waar relevant): Zwart leder, Stof, Alcantara, etc.
Normalisatie
Eenduidige schrijfwijze en hoofdletters; vaste opties in keuzelijsten om varianten/fouten te voorkomen.
OEM-nummer als “alleen cijfers/letters, geen spaties”, behoud leading zeros.
Structured data mapping
Brand → schema.org Brand
OEM-nummer → MPN
Conditie → itemCondition = UsedCondition (of “RefurbishedCondition” indien toepasselijk)
GTIN/EAN (indien beschikbaar)
VehicleModel/VehicleSeating/AdditionalProperty via JSON-LD waar zinvol
Doel: semantische verfijning, geen duplicatie met attributen.
Gebruik tags voor stijlen/kenmerken die niet als filter nodig zijn: “Origineel BMW”, “Sport Line”, “Shadowline”.
Niet gebruiken voor: OEM-nummers, modelnamen/chassis, brandstof/versnellingsbak (die zijn attributen).
Houd tags beperkt en zinvol; voorkom meertalige duplicaten door consistente vertaalinstellingen.
Doel: snel tot het juiste onderdeel, zonder SEO-schade.
Filter op deze attributen:
Model/Chassis, Bouwjaar, Brandstof, Versnellingsbak, Motorcode, Positie, Carrosserie, Conditie, OEM-nummer.
UX-richtlijnen:
Toon alleen relevante filters per context (bijv. in E30-categorie geen irrelevante opties).
Laat actieve filters als “chips” boven de productlijst zien, met snel verwijderen.
SEO & indexatie:
Faceted URL’s niet massaal indexeren. Gebruik canonical naar de basis-categorie of noindex voor diepe combinaties.
Vermijd indexatie van no-results pagina’s.
Performance:
Test filtering op datasets van 1,000+ producten.
Overweeg server-side filtering en object caching; vermijd zware AJAX-latency.
Doel: OEM-first vindbaarheid en minder foutbestellingen.
Plaats OMTEEN op 3 plekken:
Attribuut: OEM = 63117271901
Korte beschrijving: “OEM-nummers: 63117271901, 63117271902”
Titel & slug: “Koplamp links BMW E30 – OEM 63117271901”
Synoniemen en revisies:
Voeg “Vervangt OEM: …” en “Compatibel met OEM: …” toe (ACF repeater of aparte velden).
Zoeken:
Gebruik een verbeterde zoekplugin die exact-match en substring op OEM ondersteunt, met typo-tolerance.
Validatie:
Interne controle op invoer (regex) en dubbele OEM’s; één bron van waarheid voor OEM’s.
Doel: snelle instap via model of voertuigselector.
Modeltegels
Een raster met chassis/series (E30, E36, F30, etc.) met:
Dynamische productaantallen
Snelkoppelingen naar veelgekochte subonderdelen
Vehicle selector (bovenaan shop)
Merk > Serie > Chassis > Bouwjaar > Motor
Onthoud selectie (URL-params/sessie) en prefilter catalogus.
Content
Korte, unieke intro’s op modelcategoriepagina’s met interne links naar populaire subcategorieën.
Doel: volledige NL/EN-dekking, consistente slugs en zoekervaring.
Wat moet worden vertaald
Producten, categorieën, attributen (naam+waarde), tags, custom pages (modelpagina’s), homepage-elementen.
Niet vertalen
OEM-nummers en chassis-codes (E30/E36) blijven gelijk.
Slugs
Vertaal categorie- en attribuuts slugs per taal; houd OEM/chassis ongewijzigd.
Valuta
Indien gewenst: multicurrency met automatische afronding en valuta per taal/regio.
Zoek
Re-index na vertalingen; test OEM-zoekopdrachten in beide talen.
Doel: korte, betekenisvolle URL’s met OEM en model.
Aanbevolen
NL: /nl/onderdeel/koplamp-bmw-e30-63117271901/
EN: /en/part/headlight-bmw-e30-63117271901/
Consistentie
Gebruik vaste segmenten (“onderdeel”/“part”) of behoud /product/ als je de WooCommerce-standaard prefereert.
Canonicals & duplicaten
Canonical naar de primaire categorie-URL.
Voorkom duplicatie tussen model- en onderdeelcategoriepagina’s met dezelfde set producten.
Rich results
Product schema (prijs/voorraad/conditie), BreadcrumbList op categorieën.
Media-SEO
Bestandsnamen en alt-teksten met onderdeel + model + OEM.
Doel: schaalbaar en foutloos.
Import
WP All Import-achtige workflow (CSV/XML) met unieke keys (bijv. OEM of eigen SKU-formule: {OEM}-{conditie}-{positie}).
Extra velden (ACF)
Compatibiliteit/fitment (merk/serie/chassis/jaar/motor).
Alternatieve/vervangende OEM’s (repeater).
Positie, conditie-specificaties, staat/foto’s van schade.
Beeldverwerking
WebP, compressie, CDN.
Kwaliteit
Validatieregels, duplicaatdetectie en checklists voor productpublicatie.
Doel: conversie, vertrouwen en minder retouren.
Productpagina
Boven de vouw: titel met OEM, prijs, voorraad, call-to-action.
Prominent: OEM-nummer(s), compatibiliteitsblok (“Past op: E30 1988–1991, M40/M42; Links”).
Tabs: Specificaties (attributen), Compatibiliteit, Staat/garantie/retour, Verzending.
Foto’s: van het exacte onderdeel met detailshots van slijtage/beschadiging.
Categoriepagina
Korte SEO-intro, duidelijke filters, chips voor actieve filters.
0-resultaatflow
Toon alternatieve modellen/onderdelen en een “onderdeel aanvragen”-formulier.
Doel: snelle laadtijden en stabiele filtering/zoek.
Hosting
PHP 8.2+, object cache (bijv. Redis), HTTP/2/3, voldoende CPU/RAM.
Caching
Full-page caching + fragment caching voor winkelwagen/filters.
Database
Indexen op meta voor OEM/fitment; overweeg dedicated fitment-tabel voor snelheid.
Monitoring
Query Monitor-achtige checks; optimaliseer zware filter/zoekqueries.
Gebruikte onderdelen
Duidelijke staatomschrijving, garantievoorwaarden, eventuele uitzonderingen op herroepingsrecht conform wet.
Verzending
Profielen per gewicht/afmeting; internationale labels en douane-informatie voor EN-markt.
Documentatie
Montageadvies, compatibiliteitsdisclaimer, retourproces.
Meertaligheid en valuta: WPML + WooCommerce Multilingual & Multicurrency.
Filtering: kies één van WOOF of Filter Everything; bij grote catalogi overweeg FacetWP of vergelijkbaar.
Import: WP All Import Pro (+ ACF add-on).
Zoeken: Relevanssi of ElasticPress voor OEM/SKU-focus en snelheid.
SEO: Rank Math of Yoast met schema.
Caching/prestaties: WP Rocket + server-side object cache.
Media: Imagify/Smush + WebP + CDN.
ACF Pro: voor compatibiliteit en extra velden.
Maak een eigen fitment-datatabel met kolommen:
product_id, brand, series, chassis, year_from, year_to, engine_code, body_type, transmission
Gebruik deze tabel voor:
Supersnelle filters
Compatibiliteitsoverzicht op productpagina
Vehicle selector prefiltering
Definitief datamodel
Taxonomie: merk/serie/chassis, onderdelenhiërarchie.
Attributenlijst met vaste waarden en schrijfwijzen.
ACF-velddefinities (compatibiliteit, alternatieve OEM’s, positie, conditie).
Meertaligheid
WPML-configuratie, vertaalbare entiteiten, slug-strategie, taalwisselaar.
Importpijplijn
CSV/XML-sjabloon, unieke key (OEM/SKU), validaties en duplicaat-checks.
Templates
Product- en categorie-templates, compatibiliteitsblok, structured data, breadcrumbs.
Filtering
Configuratie per context, conditionele weergave, canonical/noindex-regels.
Zoek
OEM/SKU exact-match, substring, typo-tolerance; indexeren per taal.
Homepage & navigatie
Modeltegels met aantallen, vehicle selector, interne links naar populaire onderdelen.
SEO & media
URL-structuur, meta’s, schema, alt-teksten en bestandsnamen, canonical-beleid.
Performance
Caching, object cache, CDN, query-optimalisatie en load-tests.
QA & lancering
Meertalige flows, mobile filters, 0-resultaatscenario’s, testbestellingen en retourproces.