Jouw Next.js of aangepaste site, geciteerd door AI-zoekmachines.
Op een aangepaste site staat alles wat AI-crawlers nodig hebben in je code. De audit van Citable vertelt je welk bestand je moet aanpassen, meet of AI je citeert en levert artikelen met bronvermelding direct aan je eigen blog: als een pull request met een Markdown- of MDX-bestand in je repository, of via een ondertekende webhook of de REST API.
Waarom AI Next.js-sites citeert (of overslaat)
De meeste AI-crawlers voeren geen JavaScript uit. Een pagina die op de server wordt gerenderd (of statisch wordt gegenereerd) biedt ze de volledige tekst; een pagina die zichzelf in de browser vult, geeft ze slechts een lege huls. Met Next.js kies je dit per pagina, dus het is de moeite waard om dit te controleren.
Wanneer de audit Next.js detecteert, spreekt het de ontwikkelaar aan: voor elk probleem wordt de plek aangegeven waar wijzigingen nodig zijn (app/robots.ts, de metadata van de pagina, app/sitemap.ts…). De wekelijkse meting laat vervolgens zien welke vragen AI beantwoordt met de pagina van iemand anders, waarna Citable de artikelen schrijft.
Wat zit in de weg bij Next.js
De wekelijkse audit van Citable herkent Next.js en geeft je voor elk probleem de stappen die je direct in Next.js uitvoert.
01
Inhoud die alleen verschijnt met JavaScript
Als de tekst pas na een client-side fetch verschijnt, rapporteert de audit een lege JavaScript-huls of nauwelijks tekst. Render de pagina op de server of genereer deze statisch.
02
robots, sitemap en llms.txt in code
robots in app/robots.ts (of public/robots.txt), de sitemap in app/sitemap.ts en llms.txt in public/llms.txt. De audit geeft je de gecorrigeerde robots-regels wanneer een AI-zoekcrawler wordt geblokkeerd.
03
noindex te breed ingesteld
Het robots-veld in de metadata van een pagina, of een X-Robots-Tag header in next.config, kan pagina's die je geciteerd wilt hebben verbergen. Verwijder dit alleen op die pagina's, nooit in app/layout.tsx: inlog-, winkelwagen- of zoekpagina's moeten hun instellingen behouden.
04
Metadata, canonical en taal
Titel en beschrijving in de metadata van elke pagina, de canonical in alternates.canonical, de taal in <html lang> in app/layout.tsx en één <h1> per pagina.
Verbind Next.js met Citable
Kost slechts een paar minuten. Elk artikel komt daarna in je CMS terecht, als concept of direct gepubliceerd, afhankelijk van hoe je de publicatie-instellingen hebt geconfigureerd.
- 1
Maak je Citable-account aan en voeg je site toe: website, concurrenten en kopersvragen.
- 2
Open Instellingen → CMS voor die site en kies Next.js.
- 3
Installeer de Citable GitHub App in de repository van je site.
- 4
Controleer de map met berichten en het adres van je blog: we detecteren deze op basis van je bestaande berichten.
- 5
Verbinden. Elk artikel komt aan als een pull request.
- 6
Kies in hetzelfde tabblad hoe artikelen worden gepubliceerd: ingepland met een goedkeuringsperiode of alleen als concept.
Wat je nodig hebt
- Een blog die Markdown- of MDX-bestanden uit de repository leest
- De Citable GitHub App geïnstalleerd op die repository (Integraties)
Wat Citable publiceert over Next.js
Concept of live
Een concept is een open pull request: merge deze en hij staat live. Bij automatische publicatie merget Citable de wijzigingen wanneer het goedkeuringsvenster verloopt (nooit voorbij je branch-beveiligingen). Blog in een database? Gebruik de ondertekende webhook of de API v1.
Publicatie ongedaan maken vanuit Next.js
Als je blog Markdown- of MDX-bestanden uit de repository leest, koppel dan GitHub: elk artikel komt binnen als een pull request in je posts-map, met de frontmatter-keys die je posts al gebruiken. Het mergen ervan publiceert het artikel (bij automatische publicatie merget Citable het zodra het goedkeuringsvenster verloopt, en nooit voorbij je branch-beveiligingen). Als je blog gegevens uit een database leest, verstuurt de webhook de titel, slug, samenvatting, HTML en markdown, JSON-LD (Article en FAQPage), afbeeldingen met alt-tekst, bronnen, taal, tags en datum, ondertekend met X-Citable-Signature. Het verstuurt “publicar: false” tenzij automatische publicatie is ingeschakeld (dit is standaard aan, met een eigen goedkeuringsvenster); jouw ontvanger bepaalt wat er gebeurt en antwoordt met het ID (en de URL als het live gaat).
Velden die we invullen
- Een Markdown- of MDX-bestand in je posts-map (content/blog, posts…)
- Frontmatter met de keys die je posts al gebruiken: titel, omschrijving, datum, tags, afbeelding…
- Body in Markdown, met afbeeldingen die gekoppeld zijn aan de opslag van Citable
Citable op Next.js: veelgestelde vragen
Wat mensen vaak vragen voordat ze beginnen. Ontbreekt er iets? Stuur ons een bericht.
Stuur ons een berichtMoet ik Next.js gebruiken?
Nee. GitHub werkt met elk blog dat gebouwd is op basis van Markdown- of MDX-bestanden (Astro, Hugo, Jekyll, Gatsby…), en de webhook is een ondertekende POST naar elke HTTPS-URL, dus het werkt met elke stack, en met Zapier, Make of n8n. De Next.js route handler op de integratiepagina is slechts een kant-en-klaar voorbeeld.
Kan ik artikelen ophalen in plaats van ze te ontvangen?
Ja. Maak een API-sleutel aan op de ontwikkelaarspagina en lees artikelen (markdown, HTML, bronnen, veelgestelde vragen) met de REST API v1.
Hoe verifieer ik de webhook?
Controleer de X-Citable-Signature header (t=…,v1=…) met HMAC-SHA256 over “t.body” met behulp van het secret dat eenmalig wordt getoond bij het koppelen, en wijs timestamps ouder dan 5 minuten af. Je endpoint moet binnen 10 seconden antwoorden.
Lezen AI-crawlers mijn Next.js-site?
Als de pagina's server-side of statisch worden gerenderd, ja, tenzij ze geblokkeerd worden door robots of noindex. De wekelijkse audit van Citable controleert beide van buitenaf.
Kan Citable garanderen dat AI mijn site citeert?
Nee, en niemand kan dat. Citable meet elke week hoe vaak elke AI je noemt en citeert, met een betrouwbaarheidsmarge, publiceert artikelen met bronvermelding voor de ontbrekende onderwerpen en laat zien wanneer een gepubliceerde URL wordt geciteerd.
Bekijk wat AI over je zegt voordat je iets koppelt.