JSON-LD strukturerad data: färdiga exempel och en PHP-generator
JSON-LD är det format som Google rekommenderar för strukturerad data. Den här guiden förklarar vad som ska markeras, visar kopieringsklara exempel för de mest användbara schema.org typerna och det lilla PHP-mönstret vi använder för att generera giltig uppmärkning på varje sida utan att skriva JSON för hand.
Kortfattat
- JSON-LD är ett
<script type="application/ld+json">block på sidan som beskriver det för maskiner, med hjälp av schema.org-vokabulär. - Markera bara det som användare kan se på sidan. Markering som inte matchar innehållet riskerar en manuell åtgärd och vinner ingenting.
- Börja med
Organization,BreadcrumbListochArticleellerProduct; lägg tillFAQPage,ServiceellerLocalBusinessdär de passar. - Generera JSON i PHP från arrayer med
json_encode, en@graphper sida, med stabila@idvärden. - Validera mallar med Rich Results Test och Schema Markup Validator och övervaka förbättringsrapporter Search Console.
JSON-LD strukturerad data är ett sätt att berätta för sökmotorer, i maskinläsbar form, vad en sida är: en artikel, en produkt med ett pris, ett företag med kontaktuppgifter, en lista med frågor och svar. Det är osynligt för besökarna, det ersätter inte bra innehåll och det höjer inte i sig rankingen. Vad det gör är att göra en sida kvalificerad för rika resultat, hjälpa motorer att koppla dina sidor till rätt enhet och ge AI-baserad sökning en renare källa att läsa. Vi genererar det på varje sida på integrono.com och våra andra sajter, och den här guiden är den praktiska versionen av det arbetet.
JSON-LD vs Microdata vs RDFa
Schema.org vokabulär kan bäddas in i tre syntaxer. Microdata och RDFa lägger in attribut i dina HTML-taggar, vilket trasslar ihop märkning med mallar. JSON-LD bor i ett skriptblock, separat från layouten, så det är lättare att generera, testa och ändra. Google uppger att de rekommenderar JSON-LD, och det är vad vi använder överallt.
Principer före exempel
- Beskriv synligt innehåll. Om priset, betyget eller FAQ inte finns på sidan, lägg det inte i uppmärkningen.
- Använd absoluta webbadresser och sidans kanoniska URL.
- Var komplett för nödvändiga egenskaper och lägg till rekommenderade när du har riktiga data.
- Använd
@idför att länka enheter. Artikelns författare är den organisation som definieras en gång med ett@id, inte en ny kopia varje gång. - Använd datum i ISO 8601 (
2026-10-28eller med en tid och zon). - Uppfinn inte recensioner eller betyg. Fake
AggregateRatingdata är en vanlig orsak till manuella åtgärder.
Exempel 1. Organisation (och webbplats)
Lägg detta på startsidan eller i en graf för hela webbplatsen. Den definierar den enhet som annan uppmärkning refererar till.
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://example.com/#organization",
"name": "Example Studio",
"url": "https://example.com/",
"logo": "https://example.com/images/logo.png",
"email": "[email protected]",
"sameAs": [
"https://github.com/example",
"https://www.linkedin.com/company/example"
]
}
Exempel 2. BreadcrumbList
Breadcrumb-markering låter Google visa sökvägen till sidan istället för en rå URL i resultaten. Det måste matcha de synliga brödsmulorna.
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com/"},
{"@type": "ListItem", "position": 2, "name": "Blog", "item": "https://example.com/blog"},
{"@type": "ListItem", "position": 3, "name": "JSON-LD guide", "item": "https://example.com/blog/json-ld-guide"}
]
}
Exempel 3. Artikel
För blogginlägg och guider. Egenskaperna som är viktiga: rubrik, datum, författare, utgivare, bild och sidans URL.
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "JSON-LD structured data: examples",
"description": "Short summary of the article.",
"url": "https://example.com/blog/json-ld-guide",
"mainEntityOfPage": "https://example.com/blog/json-ld-guide",
"inLanguage": "en",
"datePublished": "2026-08-23",
"dateModified": "2026-10-28",
"author": {"@id": "https://example.com/#organization"},
"publisher": {"@id": "https://example.com/#organization"},
"image": {"@type": "ImageObject", "url": "https://example.com/images/blog/json-ld.webp", "width": 1200, "height": 630}
}
Ändra dateModified endast när innehållet verkligen ändras. Att stöta på den vid varje driftsättning är ett tyst sätt att tappa förtroendet.
Exempel 4. Produkt med erbjudande
För produktsidor med synligt pris. Inkludera tillgänglighet och valuta; lägg till aggregateRating eller review endast om riktiga recensioner visas på sidan.
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Example product",
"description": "What it is and who it is for.",
"image": ["https://example.com/images/product.webp"],
"sku": "EX-001",
"brand": {"@type": "Brand", "name": "Example"},
"offers": {
"@type": "Offer",
"url": "https://example.com/product/ex-001",
"priceCurrency": "EUR",
"price": "49.00",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
}
}
Exempel 5. Service med erbjudande
För betaltjänster, till exempel en fastprisrevision eller en timkonsultation. Vi använder detta mönster på våra egna servicesidor.
{
"@context": "https://schema.org",
"@type": "Service",
"name": "Architecture review",
"serviceType": "Software architecture analysis",
"provider": {"@id": "https://example.com/#organization"},
"areaServed": "Worldwide",
"offers": {
"@type": "Offer",
"price": "200",
"priceCurrency": "EUR",
"url": "https://example.com/services/architecture-review"
}
}
Exempel 6. FAQ-sida
FAQ-markering beskriver en lista med frågor och svar som är synliga på sidan. Var medveten om att sedan 2023 visar Google rika resultat på vanliga frågor endast för en begränsad uppsättning auktoritativa webbplatser, så förvänta dig inte utökningsbara svar i resultaten. Markeringen är fortfarande giltig, fortfarande läsbar av andra sökmotorer och AI-system, och den håller FAQ strukturerad på ett sätt som maskiner kan citera.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Do I need structured data to rank?",
"acceptedAnswer": {"@type": "Answer", "text": "No. It is not a ranking requirement, but it can make pages eligible for rich results."}
}
]
}
Kombinera allt i en @graf
En sida har sällan bara en enhet. Lägg alla i ett skript med @graph, och hänvisa till delade enheter med @id:
{
"@context": "https://schema.org",
"@graph": [
{"@type": "Organization", "@id": "https://example.com/#organization", "name": "Example Studio"},
{"@type": "Article", "headline": "...", "author": {"@id": "https://example.com/#organization"}},
{"@type": "BreadcrumbList", "itemListElement": []},
{"@type": "FAQPage", "mainEntity": []}
]
}
Genererar JSON-LD säkert i PHP
Sammanfoga inte JSON för hand. Ett citat i en titel bryter hela manuset och sökmotorn ignorerar det tyst. Bygg en PHP-array och koda den. Två flaggor är viktiga: håll Unicode läsbar och skydda HTML-kontexten genom att undvika snedstreck och taggar.
function jsonLdScript(array $graph): string
{
$data = ['@context' => 'https://schema.org', '@graph' => $graph];
$json = json_encode(
$data,
JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP | JSON_THROW_ON_ERROR
);
return '<script type="application/ld+json">' . $json . '</script>';
}
$graph = [
['@type' => 'Organization', '@id' => $site . '/#organization', 'name' => 'Example Studio', 'url' => $site . '/'],
[
'@type' => 'Article',
'headline' => $title,
'url' => $canonical,
'datePublished' => $published,
'dateModified' => $modified,
'author' => ['@id' => $site . '/#organization'],
],
];
echo jsonLdScript($graph);
JSON_HEX_TAG förvandlar < och > till escape-sekvenser så att användarinnehåll aldrig kan stänga skripttaggen tidigt. Mata generatorn från samma data som renderar sidan (titel, pris, datum), så att uppmärkning och synligt innehåll inte kan glida isär. På en flerspråkig webbplats, översätt textfält och ställ in inLanguage per språk; så här produceras bloggens artiklar och FAQ-uppmärkning.
Validera och övervaka
- Rich Results Test för kvalificering av Googles utökade resultattyper.
- Schema Markup Validator för allmän schema.org-syntax av alla slag.
- Search Console förbättringsrapporter (brödsmulor, produkter, vanliga frågor och så vidare) för fel och varningar i stor skala efter att Google har genomsökt dina sidor.
- Ett enhetstest som återger varje mall och kontrollerar att JSON-LD tolkar och innehåller de nödvändiga nycklarna förhindrar regression efter refaktorer.
Misstag som kostar dig
- Uppmärkning för innehåll som inte finns på sidan (dolda FAQ, uppfunna betyg, priser som skiljer sig från det synliga priset).
- Flera motstridiga block från ett plugin och en mall, var och en med olika
Organization. - Relativa webbadresser, fel datum eller ett saknat
@id. - Trasig JSON från manuell strängbyggnad och citattecken som inte lämnats.
- Behandla schema som ett rankingtrick. Det är ett tydlighetsverktyg; sidan måste fortfarande förtjäna att rankas.
Hur vi kan hjälpa till
Strukturerad data är en del av vårt tekniska SEO-arbete: vi designar schemat för dina mallar, implementerar generatorn i din stack och ställer in validering så att den förblir korrekt efter releaser. Om du vill ha en överblick över vad som är fel på din webbplats, börja med vår tekniska SEO-revisionschecklista eller boka en konsultation.
Vanliga frågor
Vad är JSON-LD strukturerad data?
JSON-LD är ett skriptblock som innehåller schema.org data i JSON-format som beskriver innehållet på en sida för sökmotorer, till exempel en artikel, produkt, organisation eller FAQ.
Förbättrar strukturerad data rankningen?
Inte direkt. Det hjälper sökmotorer att förstå sidan och kan göra den kvalificerad för utökade resultat, vilket kan förbättra klickfrekvensen, men det är inte ett rankningskrav.
Var placerar jag JSON-LD skriptet?
Var som helst i HTML-huvudet eller brödtexten på sidan; de flesta webbplatser sätter det i huvudet. Det måste finnas i den renderade HTML som Google hämtar, så generering på serversidan är det säkraste tillvägagångssättet.
Är FAQPage-uppmärkning fortfarande värd att lägga till?
Google visar nu omfattande FAQ-resultat endast för en begränsad uppsättning webbplatser, men giltiga FAQ-uppmärkningar är fortfarande läsbara av andra sökmotorer och AI-system. Lägg till det endast för frågor och svar som är synliga på sidan.
Hur testar jag strukturerad data?
Använd Googles Rich Results Test för kvalificerade utökade resultat, Schema Markup Validator för allmän syntax och Search Console-förbättringsrapporterna för att spåra fel på hela webbplatsen.
Gratis upptäcktssamtal
Ta med en rörig stack eller en fastnad integration - Integrono kartlägger det smartaste första steget.
Ni får en senior bedömning av budgetfällor, beroenden och om ni ska köpa, limma eller bygga - innan betalt arbete startar. CEO stannar i loopen.