Søkemarkedet i Norge og Norden er i en grunnleggende transformasjon. Norske brukere har tradisjonelt hatt høy tillit til standardsøk i Google, men i 2026 konsumeres informasjon i økende grad gjennom generative svarflater: Google AI Overviews, Perplexity Pro, ChatGPT med søk og bedriftsinterne kunnskapsassistenter.
For et nettsted betyr dette at rangering på side én ikke lenger garanterer organisk trafikk, fordi brukeren ofte leser et generert sammendrag i stedet for resultatlisten. Schema.org i JSON-LD-format gir søkemotorer eksplisitte hint om hva en side betyr: hvem som publiserer den, hvem som skrev den og hva den handler om. Om siden dukker opp i et svar, avgjøres av crawler-tilgang, indeksering og innhold.
Denne guiden gir en praktisk, utviklerfokusert gjennomgang av hvordan du designer en helhetlig datagraf for WordPress. Schema.org er ett lag i dette arbeidet: det beskriver entiteter og gjør sider kvalifisert for utvidede resultater. Om en side havner i et KI-svar, avhenger ifølge leverandørene selv først av crawler-tilgang, indeksering og innhold.
1. Hvorfor strukturerte data betyr mer i KI-søk
Norsk er et lite språkområde i global sammenheng. Selv om moderne fundamentmodeller forstår norsk godt, er treningsgrunnlaget for norske domener langt tynnere enn for engelskspråklig innhold. Når norske bedrifter, regelverk eller produktkataloger bare finnes som fritekst, må enhver maskin gjette seg til betydningen.
Digitaliseringsdirektoratet (Digdir) og Felles datakatalog har lenge fremhevet semantisk interoperabilitet for offentlige data. Den samme filosofien gjelder nå for kommersielle nettsider:
- Fra nøkkelord til entiteter: Modellene bryr seg lite om hvor mange ganger et ord gjentas i en H2. De leter etter noder i en kunnskapsgraf (Knowledge Graph). En bedrift er ikke en tekststreng, men en
Organizationmed organisasjonsnummer, lokasjon, eiere og sertifiseringer. - Faktatetthet i stedet for floskler: Perplexity publiserer ikke kriteriene for hvordan tjenesten velger kilder om for eksempel regler for aksjeselskap eller valg av CMS for norske kommuner. Det som er dokumentert, er at PerplexityBot må få tilgang til siden. Entydige, strukturerte påstander gjør siden lettere å tolke for enhver maskin.
- Universell utforming og maskinlesbarhet: Tydelig semantikk i HTML kombinert med presis JSON-LD støtter både tilgjengelighetskravene i likestillings- og diskrimineringsloven og automatiserte skrapeverktøy som drives av LLM-crawlere.
Hva Google dokumenterer om strukturerte data i AI Overviews og AI Mode
Google har publisert to dokumenter som avklarer det meste av AEO-debatten for sine egne flater. Siden om KI-funksjoner stiller ingen ekstra krav for AI Overviews eller AI Mode: ingen spesielle optimaliseringer og ingen spesielle strukturerte data fra Schema.org. For å vises som støttelenke må siden være indeksert og kvalifisert for visning i Google-søk med utdrag. Indeksering og visning er ikke garantert.
Veiledningen for optimalisering til generative KI-funksjoner, publisert i mai 2026, forklarer hvorfor. AI Overviews og AI Mode bygger på Googles sentrale rangerings- og kvalitetssystemer. De bruker retrieval-augmented generation (som Google også kaller grounding) for å hente sider fra søkeindeksen, og query fan-out, altså flere beslektede søk om undertemaer. Sett fra Google er optimalisering for generativt KI-søk fortsatt SEO.
Den samme veiledningen lister opp hva du kan hoppe over for Google-søk:
- llms.txt og andre tekstfiler for KI. Google-søk bruker dem ikke. En fil du vedlikeholder for andre systemer, verken hjelper eller skader i Google.
- Å dele innholdet opp i små biter. Ifølge Google forstår systemene flere temaer på én side.
- Å skrive om tekster bare for KI. KI-systemer forstår synonymer, så du trenger ikke alle long-tail-varianter.
- For stort fokus på strukturerte data. De er ikke påkrevd for generativt KI-søk. Google anbefaler dem fortsatt fordi de gjør sider kvalifisert for utvidede resultater.
Hva hver KI-søkeleverandør dokumenterer
| System | Hva leverandøren dokumenterer | Kilde |
|---|---|---|
| Google AI Overviews og AI Mode | Ingen spesiell Schema.org-markering; siden må være indeksert og kvalifisert for utdrag | Google Search Central |
| ChatGPT-søk | OAI-SearchBot viser nettsteder i ChatGPT-søk; GPTBot samler treningsdata | OpenAIs crawlere |
| Perplexity | PerplexityBot viser og lenker til nettsteder i Perplexity-søk; brukes ikke til trening | Perplexitys crawlere |
| Claude | Claude-SearchBot forbedrer søkeresultater; Claude-User henter sider for brukerspørsmål; ClaudeBot samler treningsdata | Anthropics hjelpesenter |
Ingen av disse leverandørene publiserer en regel om at en bestemt skjematype får en side inn i et svar. Det de publiserer, er crawler-tilgang og, for Googles del, vilkårene for indeksering og utdrag.
2. Slik bygger du en JSON-LD @graph i WordPress
En utbredt feil på mange WordPress-nettsteder er fragmentert skjematildeling. Mange plugins genererer tre separate <script type="application/ld+json">-blokker: én for nettstedet, én for forfatteren og én for artikkelen. Hver blokk fremstår som en isolert øy, og søkemotoren må gjette om forfatteren i blokk A faktisk hører til organisasjonen i blokk B.
Den profesjonelle tilnærmingen er å bygge én sammenhengende kunnskapsgraf ved hjelp av @graph-nøkkelen i JSON-LD. Hver entitet tildeles en unik identifikator (@id), og entitetene refererer til hverandre via disse ID-ene.
Eksempel på @graph med Organization, Person og TechArticle
Følgende struktur viser hvordan en norsk fagartikkel kobles direkte mot bedriftsnoden og forfatteren:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://wppoland.com/#organization",
"name": "WPPoland",
"url": "https://wppoland.com",
"logo": {
"@type": "ImageObject",
"@id": "https://wppoland.com/#logo",
"url": "https://wppoland.com/images/logo.png",
"caption": "WPPoland Logo"
},
"sameAs": [
"https://github.com/wppoland"
]
},
{
"@type": "Person",
"@id": "https://wppoland.com/#author-mariusz",
"name": "Mariusz Szatkowski",
"jobTitle": "Lead WordPress Arkitekt",
"worksFor": {
"@id": "https://wppoland.com/#organization"
}
},
{
"@type": "TechArticle",
"@id": "https://wppoland.com/nb/schema-org-ai-sok-aeo-geo-guide-2026/#article",
"isPartOf": {
"@type": "WebSite",
"@id": "https://wppoland.com/#website",
"name": "WPPoland",
"url": "https://wppoland.com"
},
"headline": "Schema.org for KI-søk: ChatGPT, Perplexity og Google AI Mode",
"inLanguage": "nb-NO",
"datePublished": "2026-03-21T18:00:00+00:00",
"dateModified": "2026-09-20T18:00:00+00:00",
"author": {
"@id": "https://wppoland.com/#author-mariusz"
},
"publisher": {
"@id": "https://wppoland.com/#organization"
},
"mainEntityOfPage": "https://wppoland.com/nb/schema-org-ai-sok-aeo-geo-guide-2026/"
}
]
}Når en AI-motor crawler denne siden, forstår den umiddelbart at artikkelen er forfattet av en verifisert person tilknyttet en etablert organisasjon. Dette styrker E-E-A-T-signalene (Experience, Expertise, Authoritativeness, Trustworthiness) betraktelig.
3. Koble entiteter til Wikidata og Brønnøysundregistrene
For å eliminere usikkerhet i språkmodellene er egenskapene about, mentions og sameAs avgjørende. Dette kalles entitetsforankring (Entity Disambiguation).
Hvis en artikkel omtaler “skybasert hosting” eller “universell utforming”, kan begrepene bety ulike ting avhengig av kontekst. Ved å koble begrepene til permanente URI-er i autoritative registre vet modellen nøyaktig hva innholdet refererer til:
- Wikidata: Globale, stabile entitets-ID-er med etiketter på mange språk.
- Store norske leksikon (SNL): Svært nyttig for særnorske begreper, lovverk og historiske referanser.
- Brønnøysundregistrene (Enhetsregisteret): Bruk organisasjonsnummeret i
identifier-feltet eller lenk til oppføringen i data.brreg.no for å dokumentere selskapets juridiske eksistens.
"about": [
{
"@type": "Thing",
"name": "Schema.org",
"sameAs": "https://www.wikidata.org/wiki/Q3475322"
},
{
"@type": "Thing",
"name": "Kunstig intelligens",
"sameAs": "https://www.wikidata.org/wiki/Q11660"
}
],
"mentions": [
{
"@type": "SoftwareApplication",
"name": "WordPress",
"sameAs": "https://www.wikidata.org/wiki/Q13166"
}
]Schema.org definerer about som emnet for et verk og mentions som en henvisning til noe verket ikke nødvendigvis handler om. Brukt konsekvent forteller de en parser hvilke entiteter siden behandler.
4. Hvilke skjematyper fungerer for AEO-optimalisering
Skjematyper gir struktur, ikke garantier. Google skriver i retningslinjene for strukturerte data at markering gjør en funksjon mulig, men ikke garanterer at den vises. Tre typer blir ofte overvurdert i AEO-guider:
Slik skriver du FAQPage som KI kan sitere
Schema.org definerer FAQPage som en side med ett eller flere ofte stilte spørsmål, og QAPage som en side om ett bestemt spørsmål og svarene på det, for eksempel i et forum. En redaksjonell FAQ-blokk er FAQPage, brukerskapte spørsmål er QAPage.
Siden august 2023 viser Google FAQ-utvidede resultater bare for kjente, autoritative offentlige nettsteder og helsenettsteder. For alle andre er markeringen gyldig og ufarlig, men har ingen synlig effekt i Google-søk. Ikke selg den til en kunde som et utvidet resultat.
Regler for FAQ som holder uansett hvem som leser markeringen:
- Spørsmål og svar står synlig på siden; Google forbyr markering av innhold leseren ikke ser.
- Spørsmålet i
namemå være formulert slik reelle brukere søker. - Svaret i
acceptedAnswer.textmå starte med den direkte konklusjonen i første setning (Answer-First prinsippet). - Unngå markedsføringsfloskler; inkluder konkrete tall, tidsrammer eller metodikk.
Slik markerer du avsnitt for stemmesøk med SpeakableSpecification
Schema.org beskriver speakable som de delene av en side som egner seg spesielt godt for tekst til tale. Googles støtte er smalere enn mange AEO-guider hevder. Ifølge dokumentasjonen for speakable er funksjonen i beta for nyhetsutgivere og gjelder brukere i USA med Google Home-enheter satt til engelsk. Google Assistant bruker den til å svare på aktuelle nyhetsspørsmål på smarthøyttalere.
"speakable": {
"@type": "SpeakableSpecification",
"cssSelector": [
"#introduction",
".executive-summary"
]
}Google anbefaler rundt 20 til 30 sekunder innhold per seksjon, to eller tre setninger, og enten cssSelector eller xPath, aldri begge. Hver selektor må treffe et element i den gjengitte HTML-en. For norske nettsteder uten nyhetsfokus er speakable en beskrivelse av sidestrukturen, ikke et rangeringssignal eller en billett inn i svarene.
Slik merker du trinnvise veiledninger med HowTo
HowTo er fortsatt en gyldig Schema.org-type, men Google sluttet å vise den. I august 2023 ble HowTo-resultater begrenset til datamaskin, og 13. september 2023 forsvant de også der, slik at resultattypen ble avviklet. Google varslet at søkevisningen, rapporten og støtten i Rich Results Test ville bli fjernet 30 dager senere.
Behold HowTo bare når trinnene er ekte og synlige på siden: migreringer, cache-oppvarming, sikkerhetsrevisjoner eller deploy-pipelines, ikke markedsføringsavsnitt. Hvert trinn trenger et tydelig name og en text som kan utføres uten forkunnskaper. Ifølge Google skaper markering som ikke lenger brukes ingen problemer, men den har heller ingen synlig effekt.
5. Offer-skjema for WooCommerce med NOK og MVA
For WooCommerce-butikker som selger til det norske markedet er presise produktdata grunnlaget for at søkemotorer og shoppingflater skal forstå varene dine.
Norske forbrukere har spesifikke forventninger til betalingsmetoder, frakt og merverdiavgift. Dette bør gjenspeiles direkte i Offer-skjemaet:
{
"@type": "Product",
"name": "Enterprise WordPress Sikkerhetsrevisjon",
"image": "https://wppoland.com/images/og.png",
"description": "Omfattende teknisk sikkerhets- og ytelsesrevisjon for komplekse WooCommerce- og WordPress-installasjoner.",
"sku": "SEC-AUDIT-2026",
"offers": {
"@type": "Offer",
"url": "https://wppoland.com/nb/sikkerhetsrevisjon/",
"priceCurrency": "NOK",
"price": "24900",
"priceSpecification": {
"@type": "PriceSpecification",
"valueAddedTaxIncluded": true,
"price": "24900",
"priceCurrency": "NOK"
},
"availability": "https://schema.org/InStock",
"acceptedPaymentMethod": [
"https://schema.org/CreditCard"
]
}
}Pass på at priser alltid oppgis med korrekt ISO-valutakode (NOK), og at eventuelle fraktvilkår og returordninger (hasMerchantReturnPolicy) er eksplisitt deklarert.
For produktsvar peker Googles KI-veiledning på Merchant Center-feeder og bedriftsprofilen som veien produkter og lokale bedrifter tar inn i KI-svar. Product-markering på siden utfyller feeden, men erstatter den ikke.
Vurderinger hører bare hjemme i markeringen når de vises på siden. Googles retningslinjer for anmeldelsesutdrag utelukker selvbetjente anmeldelser: Kontrollerer en virksomhet anmeldelsene om seg selv, er sidene med LocalBusiness eller annen Organization-markering ikke kvalifisert for stjerner. Et byrå som markerer egne kundeuttalelser som AggregateRating, er akkurat dette tilfellet.
6. Slik legger du til JSON-LD i WordPress uten plugin
Mange standard SEO-utvidelser i WordPress låser brukeren til forhåndsdefinerte maler som gjør det vanskelig å injisere tilpassede @graph-relasjoner eller spesifikke Wikidata-koblinger.
En lettbent og robust utviklerløsning er å bygge en modulær hjelpefunksjon som hekter seg inn i wp_head eller genereres ved bygging i statiske Astro-frontends.
Slik setter du inn JSON-LD med PHP i wp_head
/**
* Injiserer ren JSON-LD kunnskapsgraf i nettstedets header.
*/
function wppoland_render_semantic_jsonld(): void {
if ( is_admin() ) {
return;
}
$graph = array(
'@context' => 'https://schema.org',
'@graph' => array(),
);
// Grunnleggende organisasjonsnode
$org_node = array(
'@type' => 'Organization',
'@id' => home_url( '/#organization' ),
'name' => get_bloginfo( 'name' ),
'url' => home_url( '/' ),
);
$graph['@graph'][] = $org_node;
// Spesifikk nodestruktur for enkeltartikler
if ( is_singular( 'post' ) ) {
global $post;
$article_node = array(
'@type' => 'TechArticle',
'@id' => get_permalink( $post->ID ) . '#article',
'headline' => get_the_title( $post->ID ),
'datePublished' => get_post_time( 'c', true, $post->ID ),
'dateModified' => get_post_modified_time( 'c', true, $post->ID ),
'inLanguage' => 'nb-NO',
'publisher' => array( '@id' => home_url( '/#organization' ) ),
'mainEntityOfPage' => get_permalink( $post->ID ),
);
$graph['@graph'][] = $article_node;
}
echo "\n" . '<script type="application/ld+json">' . "\n";
echo wp_json_encode( $graph, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT );
echo "\n" . '</script>' . "\n";
}
add_action( 'wp_head', 'wppoland_render_semantic_jsonld', 2 );Denne koden kjører uten eksterne avhengigheter, legger minimal belastning på serveren og sikrer full kontroll over grafstrukturen.
7. Slik tillater du GPTBot og PerplexityBot i robots.txt
Implementering av Schema.org har liten verdi dersom du samtidig blokkerer crawlerne som skal lese den i robots.txt.
Flere nettsteder har i frykt for innholdsskraping blokkert alle roboter ukritisk. Dette fører til at nettstedet forsvinner fra kildehenvisningene i Perplexity og ChatGPT Search.
Hvilke KI-crawlere som er for søk og hvilke som er for trening
Leverandørene deler crawlerne etter formål, og robots.txt behandler hver user-agent for seg:
| User-agent | Leverandør | Formål ifølge leverandøren |
|---|---|---|
| OAI-SearchBot | OpenAI | Viser nettsteder i ChatGPT-søk; nettsteder som blokkerer den, vises ikke i svar fra ChatGPT-søk |
| GPTBot | OpenAI | Henter innhold som kan brukes til å trene OpenAIs modeller |
| PerplexityBot | Perplexity | Viser og lenker til nettsteder i Perplexity-søk; brukes ikke til trening |
| Perplexity-User | Perplexity | Henter en side når en bruker spør; ignorerer som regel robots.txt fordi brukeren ba om det |
| Claude-SearchBot | Anthropic | Indekserer innhold for bedre søkeresultater i Claude |
| Claude-User | Anthropic | Henter sider som svar på en brukers spørsmål i Claude |
| ClaudeBot | Anthropic | Samler innhold som kan brukes til modelltrening |
| Google-Extended | Begrenser bruk til KI-trening og grounding i enkelte andre Google-systemer; selve søket styres av Googlebot |
Kilder: OpenAI, Perplexity, Anthropic, Google. Det eldre tokenet anthropic-ai står ikke lenger på Anthropics gjeldende liste.
En konfigurasjon som holder siden siterbar i KI-søk og reserverer den mot trening:
User-agent: OAI-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.phpÅ tillate treningscrawlere er en forretningsbeslutning, ikke et AEO-krav: OpenAI skriver at et nettsted kan tillate OAI-SearchBot og samtidig blokkere GPTBot. Ifølge OpenAI tar det rundt 24 timer før en endring i robots.txt slår inn i ChatGPT-søk, og Perplexity oppgir inntil 24 timer. Sjekk serverens tilgangslogger for disse user-agentene etter utrulling, og sammenlign med de publiserte IP-listene, fordi user-agent-strenger kan forfalskes.
Slik begrenser du hva Google viser fra siden i KI-funksjoner
Google bruker de vanlige forhåndsvisningskontrollene også i AI Overviews og AI Mode: nosnippet, data-nosnippet, max-snippet og noindex. De virker per side eller per element, slik at en pristabell eller et medlemsavsnitt kan holdes utenfor genererte sammendrag uten at siden forsvinner fra søket. Prisen er direkte: En side uten rett til utdrag kan heller ikke være støttelenke. Google advarer om at ny gjennomsøking etter en endring kan ta fra noen dager til flere måneder.
8. Slik tester du strukturerte data og vanlige feil
Strukturerte data er først nyttige når de beskriver det samme innholdet som et menneske ser i nettleseren. Arbeidsflyten bør være kort og repeterbar:
- Åpne siden i forhåndsvisning og sjekk at FAQ, forfatter og organisasjonsdata er synlige, ikke bare i markeringen.
- Test URL-en i Google Rich Results Test, og rett manglende obligatoriske felt og typekonflikter med en gang.
- Kjør JSON-LD gjennom Schema Markup Validator, særlig når
@graph-relasjoner er involvert. - Test på nytt etter plugin-oppdateringer: SEO-plugins og betalingsutvidelser skriver ofte en ekstra
Offer- ellerOrganization-node.
Vanlige feil å se etter: FAQ-svar som bare finnes i skjemaet; Person uten worksFor; blandet priceCurrency på samme domene; speakable-selektorer uten tilsvarende element i HTML-en; organisasjonsdata i bunnteksten som avviker fra Organization-noden. Alle disse gir maskinene motstridende signaler.
9. Slik måler du KI-synligheten til nettstedet
Det finnes ingen offentlig, universell “siteringsrate” for Schema.org. Det du kan måle: manuelle stikkprøver i ChatGPT Search, Perplexity og Google AI Overviews på kjernespørsmålene dine, henvisningstrafikk fra disse flatene og treff fra OAI-SearchBot, PerplexityBot og Claude-SearchBot i tilgangsloggene. Noter dato, spørring og observert sitat; det er mer pålitelig enn oppdiktede prosenttall.
Slik bruker du rapporten for generativ KI i Search Console
Google kunngjorde ytelsesrapportene for generativ KI i søk 3. juni 2026 og åpnet dem for alle nettsteder globalt 31. august 2026. De viser visninger i generative KI-funksjoner separat, med egne rapporter for søk (AI Overviews og AI Mode) og for Discover. Dimensjonene er:
- Visninger: hvor ofte URL-er fra nettstedet ditt dukket opp i generative KI-funksjoner
- Sider: hvilke URL-er som dukket opp
- Land: synlighet per land
- Enheter: hvilke enheter folk brukte (tilgjengelig for søk)
- Datoer: oppløsning per time, dag, uke eller måned
De samme visningene ligger fortsatt i den generelle resultatrapporten. Bruk rapporten til å sammenligne sidegrupper før og etter en malendring, for eksempel etter overgangen til en egen @graph-emitter. Googles veiledning advarer også om at ingen tredjepartsverktøy har tilgang til de interne rangerings- eller KI-systemene, så KI-synlighetspoeng fra slike verktøy er anslag.
Oppsummering og sjekkliste for schema i WordPress
Før du shipper JSON-LD til produksjon: valider med Rich Results Test, sjekk at @id-verdier er stabile absolutt-URL-er, og bekreft at Vipps/Klarna-markup ikke dobler Offer-noder. Én ren graf slår tre plugins som skriver hver sin.
Å dominere i morgendagens søk krever at du gjør innholdet like lesbart for maskiner som for mennesker. Følg denne sjekklisten for din WordPress-installasjon:
- Gå over til en helhetlig
@graph: Erstatt fragmenterte JSON-LD-blokker med en sammenhengende graf der organisasjon, person og artikkel er koblet via faste ID-er. - Knytt innholdet til eksterne entiteter: Bruk
sameAsogaboutmot Wikidata for å bekrefte fagterminologi og unngå modellforvirring. - Bruk FAQPage bare for synlige spørsmål: Formuler spørsmål presist, plasser konklusjonen i første setning, og forvent ikke utvidede resultater utenfor offentlige nettsteder og helsenettsteder.
- Valider mot standardene: Test sidene jevnlig i Google Rich Results Test og Schema Markup Validator for å avdekke syntaksfeil eller manglende obligatoriske felter.
- Åpne for de rette crawlerne: Tillat OAI-SearchBot, PerplexityBot og Claude-SearchBot, og avgjør GPTBot og ClaudeBot etter egen policy.
Ønsker du en grundig vurdering av din bedrifts tekniske synlighet i nye søkeflater? Les mer om hvordan vi jobber med GEO og LLMO-optimalisering eller ta kontakt for en uforpliktende teknisk gjennomgang.







