Schema markup in WordPress: zo krijg je rich results (2026)
Schema markup in WordPress is het verschil tussen een kaal blauw linkje en een resultaat met sterren, uitklapbare vragen of genummerde stappen. En sinds AI-assistenten live meelezen op het web, bepaalt diezelfde code ook of jouw pagina als bron wordt geciteerd.
Je zoekt op je telefoon naar het inbouwen van een kattenluik, en tussen de tien resultaten staat er eentje met beoordelingssterren onder de titel. Daaronder een webshop met prijs en voorraadstatus, en een derde resultaat met een leesbaar kruimelpad in plaats van een kale URL. Dat is geen toeval en je kunt er ook niet voor betalen. Op die pagina's staat schema markup: code die zoekmachines precies vertelt wat elk stuk inhoud voorstelt, in plaats van ze te laten raden. In WordPress voeg je die code makkelijker toe dan ooit, en precies daardoor gaat het ook vaker mis. Dit artikel loopt langs wat gestructureerde data zijn, welke types echt iets opleveren, hoe je ze inbouwt zonder je site te beschadigen en hoe je controleert of het werkt.
Wat gestructureerde data zijn en waarom JSON-LD wint van microdata
Gestructureerde data zijn een gedeelde woordenschat, vastgelegd door schema.org, waarmee je de inhoud van een pagina beschrijft op een manier die een crawler niet hoeft te interpreteren. In plaats van dat Google moet afleiden of een blok tekst nu een veelgestelde vraag is of de publicatiedatum van een artikel, zeg je het gewoon: dit is een FAQPage, dit is een Article met deze datePublished. Voor je bezoekers verandert er niets. Je levert alleen een tweede versie van dezelfde inhoud mee, in machinetaal.
Technisch kan dat op drie manieren, maar in de praktijk telt er nog maar één. Microdata plak je als attributen zoals itemscope en itemprop direct in je zichtbare HTML. Dat betekent dat elke template van je thema de juiste attributen op de juiste plek moet dragen, en dat iemand die het ontwerp aanpast zonder het te weten je schema kan slopen. RDFa is een variant met precies hetzelfde probleem. JSON-LD daarentegen is een op zichzelf staand codeblok, meestal in de <head>, dat je zichtbare HTML met rust laat. Je kunt het toevoegen, aanpassen of weghalen zonder je layout aan te raken, en bij een themawissel sneuvelt het niet ongemerkt. Google beveelt JSON-LD al jaren expliciet aan, en het is het formaat dat moderne thema's en SEO-plugins standaard gebruiken. Begin je vanaf nul, dan is er geen enkele reden om iets anders te kiezen.
Welke schema-types er in WordPress echt toe doen
Schema.org kent honderden types. Op een gewone WordPress-site leveren er maar een handvol iets zichtbaars op in de zoekresultaten. Deze vijf kun je maar beter door en door kennen:
- Article en BlogPosting: markeren een artikel of blogbericht, met kop, auteur, publicatiedatum en datum van wijziging. Google gebruikt dat onder meer om de datum correct te tonen in plaats van er zelf naar te gissen. Voor nieuwssites bestaat er met NewsArticle een aparte variant.
- FAQPage: markeert vraag- en antwoordparen, zoals die onderaan dit artikel. Let wel: sinds 2023 toont Google die uitklapbare vragen alleen nog bij overheids- en gezondheidssites, dus reken er op een gewone WordPress-site niet meer op. Als machineleesbare koppeling van vraag en antwoord blijft het type nuttig, vooral voor AI-assistenten.
- HowTo: beschrijft een stappenplan, desgewenst met een afbeelding per stap en een totale duur in ISO 8601-notatie, bijvoorbeeld
PT45Mvoor 45 minuten. Google heeft de visuele weergave hiervan in 2023 uit de zoekresultaten gehaald, maar als leesbare structuur voor AI-assistenten blijft het waardevol. - BreadcrumbList: geeft de navigatieroute weer, dus Start, Blog, dit artikel. Google toont dat kruimelpad vaak in plaats van een kale URL, een klein detail dat je resultaat meteen verzorgder laat ogen.
- Product: voor webshops onmisbaar, met prijs, beschikbaarheid en beoordelingen. Dit type werkt het meest direct door in je doorklikratio, omdat sterren en prijs pal onder de titel van je resultaat komen te staan.
Wat het oplevert in de zoekresultaten, en waarom AI er dol op is
Het zichtbare effect heet een rich result, in het Nederlands ook wel een verrijkt zoekresultaat: sterren, een prijs met voorraadstatus, een leesbaar kruimelpad. Het is geen rankingfactor, daar is Google expliciet over. Wel neem je meer ruimte in op de resultatenpagina, en bij een gelijke positie levert dat doorgaans meer klikken op. Zo werkt schema als indirecte hefboom via je doorklikratio, niet als magische stijging in de ranglijst.
Het deel dat veel minder mensen op het netvlies hebben, is het effect op AI-zoekmachines. ChatGPT, Perplexity, Claude en Gemini lezen jouw site niet zoals een mens dat doet. Ze halen de HTML op en moeten in een fractie van een seconde bepalen wat feit is en wat navigatietekst. Vinden ze dan schone gestructureerde data, een Article met duidelijke auteur en datum, een FAQPage waarin vraag en antwoord al aan elkaar gekoppeld zijn, dan hoeven ze een stuk minder te interpreteren dan bij losse tekst uit een zware pagebuilder. Dat is de kern van wat in de branche AEO heet, Answer Engine Optimization: je concurreert niet alleen om een plek tussen tien blauwe links, je concurreert om de bron te zijn die een assistent letterlijk citeert. Het is niet de enige factor, maar wel een van de goedkoopste om op orde te brengen.
Drie eerlijke manieren om schema markup toe te voegen
Er zijn drie redelijke wegen, en geen ervan is objectief de juiste voor iedereen. Naast elkaar gezet zien de afwegingen er zo uit:
| Weg | Voordelen | Nadelen |
|---|---|---|
| SEO-plugin (Yoast, Rank Math, AIOSEO) | Automatisch voor artikel en auteur, grote gebruikersgroep, nauwelijks instelwerk | Extra plugin met eigen onderhoud, FAQ en HowTo vaak alleen in de betaalde versie, instellingen verspreid over veel schermen |
| Handmatig codeblok | Volledige controle, geen extra plugin nodig, werkt met elk thema | Handwerk bij elke wijziging, één typefout maakt het hele blok ongeldig, het onderhoud blijft aan jou hangen |
| Thema met ingebouwd schema (Hafen) | Geen extra plugin, het schema blijft vanzelf synchroon met de zichtbare inhoud | Je zit vast aan dat ene thema, en Hafen is nog jong in plaats van jarenlang beproefd |
Weg A: een SEO-plugin
Yoast SEO, Rank Math en AIOSEO genereren Article en BreadcrumbList meestal automatisch, en bieden blokken of velden voor FAQPage en HowTo. Voor iedereen die geen code wil aanraken is dit de toegankelijkste route: je stelt het één keer in en de plugin houdt het schema bij. De prijs is een extra laag plugin, met eigen onderhoud, eigen updates en soms functies achter een betaalde versie. Draai je toch al een SEO-plugin, dan is dit vrijwel altijd het meest pragmatische beginpunt.
Weg B: een handmatig codeblok
Wie precies weet wat er op elke pagina hoort te staan, plakt een JSON-LD-blok in de editor of zet het via functions.php of een lichte plugin voor codefragmenten in de <head>. Volledige controle, geen afhankelijkheid van een compleet SEO-pakket. Het risico zit in de escaping: ongeldige JSON geeft geen zichtbare foutmelding, Google negeert het blok gewoon stilletjes. Zo ziet een minimaal en geldig FAQPage-blok eruit:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [{
"@type": "Question",
"name": "Wat is schema markup?",
"acceptedAnswer": {
"@type": "Answer",
"text": "JSON-LD-code die de inhoud van een pagina machineleesbaar uitlegt aan zoekmachines en AI-assistenten."
}
}]
}
</script>
Voor één losse pagina is dat prima met de hand te doen. Zodra je het over tientallen artikelen moet bijhouden, wordt het monnikenwerk met een hoge kans op een vergeten komma. Daarvoor bestaat onze gratis schema markup generator: je vult een formulier in, de tool bouwt de code via JSON.stringify in plaats van via het aan elkaar plakken van tekst, en wat eruit komt is per definitie geldige JSON om te kopiëren.
Weg C: een thema met ingebouwd schema
De derde weg is de minst bekende: een thema dat de JSON-LD rechtstreeks uit je blokken genereert. Schrijf je een blok met veelgestelde vragen in de editor, dan rolt het FAQPage-schema er vanzelf uit, altijd synchroon met wat er op het scherm staat. Zo pakt Hafen het aan, ons eigen thema. Daar komen we verderop op terug.
Maak je JSON-LD in twee minuten
Plak je vragen, je artikel of je stappenplan en krijg kant-en-klare JSON-LD voor FAQPage, HowTo of Article. Correcte escaping gegarandeerd, alles in je browser, zonder account en zonder dat er iets naar ons wordt gestuurd.
Fouten die je beter kunt vermijden
Schema zonder zichtbare inhoud
De duurste fout: een FAQPage voor vragen die nergens op de pagina te lezen zijn, of beoordelingen die geen enkele klant ooit heeft achtergelaten. Google noemt dat gestructureerde spam, en de gevolgen lopen van het verliezen van je rich result tot een handmatige maatregel op het hele domein. De vuistregel is simpel: staat het in je schema, dan moet een bezoeker het ook op de pagina kunnen lezen, in dezelfde bewoordingen of heel dicht daarbij.
Verplichte velden die dat niet meer zijn
Veel oude handleidingen en verouderde plugins vragen nog om velden die Google jaren geleden verplicht stelde en nu alleen aanbeveelt. Of het omgekeerde: ze proppen alles erin wat maar kan, waardoor je JSON-LD onnodig opzwelt. Voor je een sjabloon uit 2021 overtypt, controleer je de actuele eisen in de documentatie van Google zelf. Een ontbrekende publicatiedatum bij Article of een verkeerd genest acceptedAnswer bij FAQPage levert technisch geldige JSON op die Google alsnog niet als rich result accepteert.
Dubbel schema
Een klassieker zodra je een SEO-plugin combineert met een thema dat ook schema genereert, of met een blok dat ooit voor de zekerheid handmatig is toegevoegd: twee Article-blokken die op dezelfde pagina met elkaar concurreren. Google kiest niet altijd het juiste blok en negeert in het slechtste geval allebei de blokken. Kijk dus eerst wat je thema en je plugin al produceren voor je zelf iets toevoegt.
Testen: de Rich Results Test van Google
Voor je iets live zet, controleer je het met het officiële hulpmiddel: de Rich Results Test van Google. Je plakt de URL van de live pagina erin, of de JSON-LD-code rechtstreeks, en je ziet welke types worden herkend, of er fouten of alleen waarschuwingen zijn en welk rich result in aanmerking komt. Een waarschuwing blokkeert niets, een fout wel. Loop ze allebei na voor je het werk als af beschouwt, en herhaal de test na elke wissel van thema of SEO-plugin. Juist bij zo'n wissel sneuvelt het schema vaak stil, zonder dat je er elders op je site iets van merkt. Voor een simpele typefout is een kale JSON-validator overigens sneller.
De aanpak van Hafen: schema in het thema, niet als extra laag
Bij hafenstudios bouwen we Hafen, ons eigen WordPress-thema, juist omdat we het zat waren om schema tegen te komen dat niet meer klopte met de zichtbare inhoud. Hafen genereert Article, FAQPage en BreadcrumbList automatisch uit je blokken: je schrijft een blok met veelgestelde vragen in de editor en de JSON-LD rolt er meteen uit, altijd gelijk aan wat je bezoeker ziet. Geen extra SEO-plugin voor dit onderdeel, geen kopieerwerk, en niet het risico dat een ontwerpwijziging een schema breekt waar al maanden niemand naar kijkt.
Eerlijk erbij: Hafen is een jong en gratis thema, inmiddels goedgekeurd voor de officiële themadirectory van WordPress, geen product met tien jaar kilometers op de teller. Heb je vandaag een gevestigd thema met een lange staat van dienst nodig, blijf dan bij je vertrouwde combinatie van thema en SEO-plugin. Wil je de native aanpak zonder kosten uitproberen, dan is het een reële optie. Voor elke andere site kun je intussen prima gestructureerde data maken met onze gratis schema-generator voor WordPress.
Conclusie
Schema markup in WordPress is geen optioneel technisch detail meer. Het is de kortste route om zowel Google als de AI-assistenten je inhoud te laten begrijpen zonder dat ze hoeven te gokken. Begin bij Article, FAQPage en BreadcrumbList, want die geven de meeste opbrengst voor de minste moeite. Kies daarna de weg die bij je technische comfort past, en beschouw niets als klaar voor je het door de officiële test hebt gehaald. Wil je zonder documentatie te lezen meteen schema markup genereren, dan staat de tool klaar, samen met de rest van onze gratis WordPress-tools. Overweeg je sowieso een zware pagebuilder achter je te laten, lees dan onze vergelijking van alternatieven voor Elementor. En houd je plugins actueel, want ook een update van een SEO-plugin kan je schema onderuithalen.
Schema dat nooit uit de pas loopt
Hafen is ons AI-native WordPress-thema, gratis te downloaden: Article, FAQPage en BreadcrumbList komen automatisch uit je blokken, zonder extra SEO-plugin voor dit onderdeel.
Veelgestelde vragen
Wat is schema markup in WordPress precies?
Schema markup is code, meestal in JSON-LD-formaat, die de inhoud van je pagina expliciet beschrijft voor zoekmachines en AI-assistenten in plaats van ze te laten afleiden uit de zichtbare tekst. In WordPress maakt dat rich results mogelijk, zoals sterren, een prijs of een leesbaar kruimelpad, en het helpt AI-zoekmachines om je pagina nauwkeuriger te citeren.
Heb ik een plugin nodig voor gestructureerde data in WordPress?
Nee, verplicht is dat niet. Een SEO-plugin als Yoast of Rank Math is de makkelijkste weg, maar je kunt JSON-LD ook handmatig in een codeblok zetten of een thema gebruiken dat het schema zelf genereert, zoals ons eigen thema Hafen. Welke weg past, hangt af van hoeveel controle je wilt houden en of je toch al een SEO-plugin draait.
JSON-LD of microdata: wat kies ik?
JSON-LD, zonder twijfel, als je opnieuw begint. Het staat als los codeblok naast je zichtbare HTML, Google beveelt het expliciet aan en het is het formaat dat moderne thema's en SEO-plugins gebruiken. Microdata vraagt om attributen in elke afzonderlijke template en sneuvelt makkelijk bij een thema-update.
Kan schema markup mijn website schaden?
Ja, als het schema niet klopt met wat er zichtbaar op de pagina staat. Verzonnen vragen of opgepompte beoordelingen gelden volgens de richtlijnen van Google als gestructureerde spam en kunnen je het rich result kosten of, in ernstige gevallen, een handmatige maatregel opleveren. De regel is simpel: schema beschrijft wat er al te zien is, het vervangt het nooit.
Hoe controleer ik of mijn schema markup werkt?
Met de gratis Rich Results Test van Google. Je plakt de URL of de JSON-LD-code erin en ziet welke types worden herkend, welke fouten of waarschuwingen er zijn en welk rich result in aanmerking komt. Herhaal die test na elke wissel van thema of SEO-plugin, want juist dan sneuvelt schema zonder dat je er verder iets van merkt.