JSON-LD: Formát pro implementaci schema.org do HTML

JSON-LD: Formát pre implementáciu schema.org do HTML

JSON-LD: co to je a proč ho používat

JSON-LD (JavaScript Object Notation for Linked Data) je standard W3C pro vyjádření propojených dat přímo v dokumentu HTML. Nejčastěji se používá k vkládání slovníku schema.org do stránek, aby vyhledávače, asistenční systémy (AIO/AEO) a jazykové modely (LLM) spolehlivě pochopily význam obsahu a jeho entit. Na rozdíl od mikroformátů a RDFa nezasahuje do značkování prvků v DOM, je čitelný, přenositelný a snadno spravovatelný v procesech sestavení.

Klíčové výhody JSON-LD pro moderní SEO a AIO/AEO

  • Oddělení prezentace od dat: strukturovaná data jsou v samostatném bloku a nenarušují vizuální šablony.
  • Stabilita při refaktoringu: změny HTML/CSS nevyžadují přepis datových atributů.
  • Snadná správa verzí a CI/CD: JSON je vhodný pro lintování, testy a generování.
  • Podpora vyhledávačů: Google, Bing a další doporučují JSON-LD pro schema.org.
  • Přístupnost pro LLM: modely snadno zpracovávají JSON a vytvářejí interní znalostní grafy stránek.

Architektura a základní prvky JSON-LD

  • @context: vždy "https://schema.org" (nebo "http://schema.org" kvůli zpětné kompatibilitě).
  • @type: typ entity, např. Article, Product, Organization.
  • @id: stabilní identifikátor (ideálně kanonická URL s fragmentem), usnadňuje propojování.
  • @graph: pole entit tvořících lokální znalostní graf stránky.
  • Pole IRI/URL: url, image, sameAs, mainEntityOfPage.

Nejčastěji používané typy schema.org

  • WebSite a WebPage: vymezují web a aktuální stránku.
  • Organization/LocalBusiness: identita značky a provozovny.
  • BreadcrumbList: drobečková navigace.
  • Article/BlogPosting/NewsArticle: publikační obsah.
  • Product (+ Offer, AggregateRating): e-commerce.
  • FAQPage, HowTo, Event, JobPosting: rozšířené prvky vyhledávání.

Minimální příklad: základní entita stránky

Následující blok reprezentuje web, stránku a drobečkovou navigaci v jednom souboru pomocí @graph:

Identita značky a propojení entit

Silná identita pomáhá sjednocovat signály napříč doménami. Použijte Organization/LocalBusiness s @id, url, logo, sameAs a propojte jej v @graph s WebSite, WebPage i obsahem.

Článek pro LLM a vyhledávače: Article/BlogPosting

Publikační obsah by měl obsahovat metadata o autorství, datech, obrázku, tematické kategorii a vazbu na stránku (mainEntityOfPage). U autorů použijte Person nebo Organization a stabilní @id.

E-commerce: Product, Offer a recenze

U produktů jsou důležité sku, brand, gtin, offers s priceCurrency/price a availability. Souhrnná hodnocení používají AggregateRating. Dbejte na soulad obsahu na stránce s daty (tzv. content-parity).

FAQ a HowTo: odstraňování překážek pro AEO

Formáty FAQPage a HowTo pomáhají asistentům (AEO) generovat přímou odpověď. Každá otázka/odpověď by měla odpovídat viditelnému obsahu.

Místní firmy a události

Pro lokální SEO doplňte address (PostalAddress), geo, openingHoursSpecification, telephone a propojte je s Organization. U událostí uvádějte startDate/endDate, místo konání (Place), případně offers.

Modelování více entit pomocí @graph

@graph umožňuje vytvořit kompaktní lokální znalostní graf: každá entita má vlastní @id, propojení realizujete pomocí odkazů na @id. Tím se vyhnete duplicitám a usnadníte inferenci LLM.

Stabilní identifikátory a kanonické URL

  • Používejte kanonickou URL s fragmentem (např. https://domena.tld/stranka#entity).
  • Neměňte @id při drobných úpravách obsahu; mění se pouze obsahová pole (dateModified apod.).
  • Pro opakující se prvky (autor, organizace) zvolte jednu autoritativní URI.

Mezijazykové a regionální varianty

U vícejazyčných webů zohledněte inLanguage a propojte jazykové verze prostřednictvím uzlů WebPage (včetně url obsahujících hreflang). Dbejte na konzistenci názvu produktu, měny v Offer a místní dostupnosti.

Generování JSON-LD na straně serveru a klienta

  • SSR/SSG: preferovaná varianta – data jsou ihned dostupná pro crawlery i bez JS.
  • Hydratace na straně klienta: je-li nezbytná, vložte kompletní blok při prvním vykreslení a minimalizujte pozdější změny.
  • Headless CMS: ukládejte schémata jako šablony s parametry; validujte je v pipeline.

Validace a testování

  • Průběžně kontrolujte syntaktickou správnost JSON (lintování) a požadavky pro rozšířené výsledky (rich results).
  • Automatizujte testy snapshotů pro klíčové stránky (porovnání očekávaného a generovaného JSON-LD).
  • Sledujte změny ve specifikacích schema.org a doporučeních vyhledávačů.

Nejčastější chyby a jak se jim vyhnout

  • Nesoulad s obsahem: hodnoty v JSON-LD musí odpovídat viditelnému textu (cena, dostupnost, recenze).
  • Chybějící @id: bez stabilních identifikátorů je obtížné propojovat uzly entit.
  • Duplicitní entity: sloučte je pomocí společného @id a sameAs.
  • Přehnané typování: zvolte nejbližší konkrétní typ, ale nezatěžujte jej irelevantními vlastnostmi.
  • Nesprávná data a měny: používejte formáty ISO (YYYY-MM-DD) a kódy ISO 4217.

JSON-LD pro konverzační dohledatelnost a LLM

Jazykové modely využívají JSON-LD jako explicitní vrstvu faktů: pomáhá rozlišovat entity, stabilizuje názvy a vztahy a zkracuje cestu od extrakce k odpovědi. Pro asistenty (AIO/AEO) je důležité doplňovat:

  • sameAs na autoritativní profily (Wikidata, LinkedIn, oficiální sociální sítě).
  • about/mentions pro další entity v článku.
  • knowsAbout u autorů/organizací pro vyjádření tematické odbornosti.

Bezpečnost, transparentnost a zásady

  • Neuvádějte zavádějící informace: strukturovaná data musí věrně odrážet stránku.
  • Nesdílejte citlivé osobní údaje bez právního základu.
  • Respektujte licence při odkazování na obrázky (ImageObject může obsahovat license).

Kontrolní seznam před nasazením

  1. Jsou definovány a propojeny všechny klíčové entity (WebSite, WebPage, Organization/Person)?
  2. Má každá entita stabilní @id a správnou URL?
  3. Je JSON syntakticky platný a minimalizovaný (bez nadbytečných mezer v produkci)?
  4. Odpovídá obsah na stránce hodnotám v JSON-LD (ceny, data, autor, obrázky)?
  5. Jsou pokryty okrajové scénáře (404, stránkování, varianty produktů, verze AMP/PWA)?

Pokročilé vzory: obsah s více hlavními entitami

Pro kategorie nebo vstupní stránky použijte ItemList s itemListElement, přičemž položky odkazují na vlastní produktové či článkové @id. U znalostních center modelujte vztahy prostřednictvím about, mentions a subjectOf.

Doporučení pro nasazení a údržbu

  • Spravujte šablony schém v repozitáři vedle komponent (Design System / UI library).
  • V CI spouštějte lintování, testy schémat a validaci povinných polí pro klíčové typy.
  • Logujte změny dateModified a udržujte konzistentní @id napříč verzemi URL.

JSON-LD je preferovaný a škálovatelný způsob, jak do webu vkládat schema.org. Umožňuje přesně modelovat entity, udržovat konzistentní identitu značky a zlepšovat srozumitelnost obsahu pro vyhledávače, asistenty i LLM. Správně navržené @graph, stabilní @id a důsledná validace jsou klíčem k dlouhodobé udržitelnosti a výkonu v moderním SEO a AIO/AEO.