Direct naar de inhoud

Cookie-instellingen

Kies per soort welke cookies je toestaat. Je kunt je keuze altijd wijzigen via Cookie-instellingen onderaan elke pagina. Privacyverklaring

Noodzakelijk

Altijd aan

Nodig om in te loggen, je winkelwagen te bewaren en je keuzes te onthouden. Deze staan altijd aan.

Welke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: je sessie en ingelogd blijven
  • weboke_basket: je winkelwagen
  • wkBtwIncl: prijzen met of zonder btw tonen
  • wok_cookies: je cookiekeuze, 12 maanden

Meet welke advertentie tot een bezoek of bestelling leidt, zodat we niet betalen voor advertenties die niets doen.

Welke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), tot 90 dagen
  • OpenAI Ads, advertenties in ChatGPT
  • wok_aff: via welke partner je bij ons kwam (affiliateprogramma), 60 dagen

4,6

Land en taal

Elk land heeft zijn eigen site, met prijzen en btw van dat land.

Bekijken

sitemap.xml: de inhoudsopgave voor zoekmachines

Module 3: De technische basis van een pagina · Leestijd: 11 minuten

Leerdoel: Na deze les kun je een sitemap.xml lezen, beoordelen of hij klopt en zorgen dat zoekmachines hem vinden.

Kernbegrippen: XML-sitemap, sitemaps.org-protocol, urlset, url, loc, lastmod, changefreq en priority (genegeerd door Google), grens van 50.000 adressen en 50 MB, sitemapindex, canonieke adressen, Sitemap:-regel in robots.txt, automatisch gemaakte sitemap

Wat een sitemap is, en wat niet

Een sitemap is een bestand met een lijst van de adressen op je site die je in de zoekresultaten wilt zien. Het is de inhoudsopgave die je aan een zoekmachine geeft. Een crawler vindt pagina's vooral door links te volgen (les 1.2). Een sitemap helpt daarbij: hij noemt ook pagina's waar weinig links naartoe gaan, en hij vertelt wanneer een pagina voor het laatst is veranderd.

Twee dingen doet een sitemap niet:

  1. Hij is geen garantie. Google zegt het zelf: een sitemap garandeert niet dat alles wat erin staat wordt gecrawld en geïndexeerd. Het indienen van een sitemap is een hint.
  2. Hij vervangt geen goede links. Een pagina die alleen in de sitemap staat en waar op je eigen site geen enkele link naartoe gaat, is voor een zoekmachine een teken dat je hem zelf niet zo belangrijk vindt.

Heb je een sitemap nodig? Volgens Google helpt hij vooral bij een grote site, een nieuwe site met weinig links van buiten, en een site met veel video of afbeeldingen. Een kleine site (Google noemt ongeveer 500 pagina's of minder) die goed intern gelinkt is, kan zonder. Maar een sitemap kost bijna niets en de meeste websitebouwers maken hem vanzelf. Heb je er een, zorg dan dat hij klopt: een sitemap vol fouten is erger dan geen sitemap.

Hoe een sitemap eruitziet

De gewone sitemap is een XML-bestand volgens het sitemaps.org-protocol, dat Google, Bing en andere zoekmachines samen gebruiken. Zo ziet de sitemap van Bloemenatelier Lotte eruit:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.example.com/</loc>
    <lastmod>2026-11-02</lastmod>
  </url>
  <url>
    <loc>https://www.example.com/bruidsboeketten</loc>
    <lastmod>2026-10-14</lastmod>
  </url>
  <url>
    <loc>https://www.example.com/contact</loc>
    <lastmod>2026-06-30T09:15:00+02:00</lastmod>
  </url>
</urlset>
OnderdeelVerplicht?Wat het doet
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">jaHet hoofdelement, met precies deze namespace
<url>jaEén blok per adres
<loc>jaHet volledige adres: met https:// en de hostnaam, korter dan 2.048 tekens
<lastmod>neeWanneer de inhoud van de pagina voor het laatst echt veranderde, in W3C-datumformaat: 2026-11-02 of met tijd en tijdzone
<changefreq>nee"Hoe vaak verandert dit?" Google negeert het
<priority>neeEen getal van 0.0 tot 1.0. Google negeert het ook

Een paar regels die vaak misgaan:

  • Volledige adressen. Geen /contact, maar https://www.example.com/contact. Google vraagt uitdrukkelijk om volledige, absolute adressen.
  • UTF-8 en escapen. Het bestand moet UTF-8 zijn, en tekens als & in een adres schrijf je als &. Een losse & maakt de hele XML ongeldig.
  • Hetzelfde schema en dezelfde host. Volgens het protocol mag een sitemap alleen adressen bevatten met hetzelfde schema en dezelfde host als de sitemap zelf. Een sitemap op https://www.example.com/ met adressen op http://example.com/ klopt dus niet. Dat is meteen een teken dat je canonical en je doorsturing niet op één lijn liggen (les 3.5 en 4.1).

lastmod: alleen als het klopt

Google gebruikt <lastmod> als het "consequent en controleerbaar" klopt. In 2023 schreef Google erbij wat telt als wijziging: de hoofdtekst, de gestructureerde gegevens of de links op de pagina. Een nieuw jaartal in de footer is geen wijziging. Zet je bij elke pagina elke dag de datum van vandaag, dan leert Google dat jouw datums niets zeggen en negeert hij ze. Een eerlijke datum, of geen datum, is beter dan een verzonnen datum.

Groot? Dan een sitemapindex

Eén sitemap mag hoogstens 50.000 adressen bevatten en hoogstens 50 MB groot zijn (zonder compressie). Is je site groter, of wil je de sitemap opsplitsen (pagina's, blog, producten), dan maak je een sitemapindex: een sitemap van sitemaps.

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://www.example.com/sitemap-paginas.xml</loc>
  </sitemap>
  <sitemap>
    <loc>https://www.example.com/sitemap-blog.xml</loc>
  </sitemap>
</sitemapindex>

Je dient dan alleen de index in. WordPress doet het zo: https://www.example.com/wp-sitemap.xml is een index die verwijst naar aparte sitemaps voor pagina's, berichten, categorieën en auteurs. SEO-plugins vervangen hem vaak door hun eigen index, bijvoorbeeld sitemap_index.xml.

Welke adressen horen erin?

Alleen de adressen die je in de zoekresultaten wilt zien, en dan in hun canonieke vorm (les 3.5). Dus niet:

  • adressen die doorsturen (de http://-variant, de oude naam van een pagina);
  • adressen die een 404 of 410 geven;
  • pagina's met noindex (les 1.3): je zegt dan tegelijk "neem dit op" en "neem dit niet op";
  • pagina's die je in robots.txt blokkeert (les 3.3);
  • varianten met parameters, zoals ?sorteer=prijs of ?utm_source=nieuwsbrief;
  • bedankpagina's, winkelwagens, inlogpagina's.

Die tegenstrijdigheden zie je terug in Search Console (les 2.2 en 2.4): in het rapport Pagina's kun je filteren op de adressen uit je sitemap, en dan zie je bijvoorbeeld adressen die zijn uitgesloten door een noindex-tag of geblokkeerd door robots.txt. Elke zo'n melding is een adres dat niet in je sitemap hoort, of een pagina die per ongeluk is afgeschermd.

Hoe zoekmachines je sitemap vinden

Er zijn twee gewone manieren, en je doet ze allebei:

  1. Een regel in robots.txt (les 3.3). Elke zoekmachine leest robots.txt, dus zo vindt ook een zoekmachine waar je nooit een account hebt hem:

    Sitemap: https://www.example.com/sitemap.xml

    Het adres moet volledig zijn. Je mag meerdere Sitemap:-regels opnemen.

  2. Indienen in Search Console en Bing Webmaster Tools (les 2.2 en 2.5). Dan zie je ook of het ophalen lukte en hoeveel adressen er zijn gevonden.

Vroeger kon je Google "pingen" met een speciaal adres. Google heeft dat in 2023 afgeschaft: zo'n ping doet niets meer. Wil je zoekmachines snel over een wijziging vertellen, dan zijn lastmod en, voor Bing en een paar andere zoekmachines, IndexNow (les 2.5) de weg.

In de praktijk: zelf maken of laten maken

Bijna niemand schrijft een sitemap met de hand. WordPress maakt sinds versie 5.5 zelf wp-sitemap.xml en zet de verwijzing in zijn (virtuele) robots.txt. De AI Builder van WebOké zet bij het publiceren een sitemap.xml in de webmap, met de datum van de laatste wijziging per pagina, en een robots.txt met de regel Sitemap: erin. Andere websitebouwers doen vergelijkbare dingen. Jouw taak is controleren:

  • Open /robots.txt op je eigen domein (bijvoorbeeld https://www.example.com/robots.txt) en kijk of er een Sitemap:-regel staat.
  • Open die sitemap in je browser. Staan er de adressen in die je verwacht, met https:// en de juiste hostnaam (met of zonder www)?
  • Klik er een paar aan. Komt elke pagina meteen goed binnen, zonder doorsturing?

Samenvatting

  • Een sitemap is een inhoudsopgave en een hint, geen garantie. Kleine, goed gelinkte sites kunnen zonder, maar een kloppende sitemap helpt altijd.
  • Verplicht zijn urlset met de juiste namespace, url en loc met volledige adressen; lastmod alleen als hij klopt. Google negeert changefreq en priority.
  • Hoogstens 50.000 adressen en 50 MB per bestand; daarboven een sitemapindex.
  • Alleen canonieke adressen die 200 geven, zonder noindex en niet geblokkeerd.
  • Zet een Sitemap:-regel in robots.txt en dien hem in bij Google en Bing. De oude ping werkt niet meer.

Quiz

1. Wat doet Google met <priority> en <changefreq> in een sitemap?



2. Je site heeft 64.000 productpagina's. Wat doe je?



3. Welk adres hoort in de sitemap van https://www.example.com?



4. Je CMS zet elke nacht bij alle pagina's lastmod op de datum van vandaag. Wat is het gevolg?



5. Hoe vindt een zoekmachine waar je geen account hebt je sitemap?



Opdracht

Opdracht A3.4: Is je sitemap geldig en te vinden? Vul het adres van je site in. Het programma zoekt je sitemap zoals een zoekmachine dat doet (eerst via robots.txt, anders op /sitemap.xml), controleert of het geldige XML volgens het protocol is, of hij in robots.txt staat, of de adressen volledig zijn en op je eigen host, en haalt er een paar op om te zien of ze echt in de index mogen. Geen eigen site? Gebruik european-union.europa.eu.

Opdracht A3.4: Is je sitemap geldig en te vinden?


Wat je invult en wat we vinden, slaan we niet op. Je browser onthoudt je antwoorden en of je de opdracht hebt gehaald. Ben je aangemeld, dan bewaren we alleen dat je de opdracht (bijna) goed had in Mijn cursussen; daar kun je het ook verwijderen.

Verder lezen

De stappen in deze artikelen gelden voor de panelen van WebOké; bij andere aanbieders werkt het vergelijkbaar.

Even geduld…

Stel je domeinen in

Regel per domein de nameservers, de koppeling aan je hosting en wie de eigenaar wordt.

Je domeinen laden…