Date structurate JSON-LD: exemple gata de utilizare și un generator PHP
JSON-LD este formatul recomandat de Google pentru datele structurate. Acest ghid explică ce trebuie marcat, arată exemple gata de copiere pentru cele mai utile tipuri schema.org și modelul PHP mic pe care îl folosim pentru a genera marcaje valide pe fiecare pagină fără a scrie manual JSON.
Pe scurt
- JSON-LD este un bloc
<script type="application/ld+json">din pagina care îl descrie pe mașini, folosind vocabularul schema.org. - Marcați numai ceea ce utilizatorii pot vedea pe pagină. Markup care nu se potrivește cu conținutul riscă o acțiune manuală și nu câștigă nimic.
- Începeți cu
Organization,BreadcrumbListșiArticlesauProduct; adăugațiFAQPage,ServicesauLocalBusinessacolo unde se potrivesc. - Generați JSON în PHP din matrice cu
json_encode, câte un@graphpe pagină, cu valori@idstabile. - Validați șabloanele cu Rich Results Test și Schema Markup Validator și monitorizați rapoartele de îmbunătățire Search Console.
Datele structurate JSON-LD sunt o modalitate de a spune motoarelor de căutare, într-o formă care poate fi citită de mașină, ce este o pagină: un articol, un produs cu un preț, o companie cu detalii de contact, o listă de întrebări și răspunsuri. Este invizibil pentru vizitatori, nu înlocuiește conținutul bun și nu ridică în sine clasamentul. Ceea ce face este să facă o pagină eligibilă pentru rezultate bogate, să ajute motoarele să vă conecteze paginile la entitatea potrivită și să ofere căutării bazate pe AI o sursă mai curată de citit. Îl generăm pe fiecare pagină a integrono.com și pe celelalte site-uri ale noastre, iar acest ghid este versiunea practică a acelei lucrări.
JSON-LD vs Microdata vs RDFa
Vocabularul Schema.org poate fi încorporat în trei sintaxe. Microdata și RDFa pun atribute în etichetele dvs. HTML, ceea ce încurcă marcajul cu șabloanele. JSON-LD locuiește într-un singur bloc de script, separat de aspect, astfel încât este mai ușor de generat, testat și modificat. Google afirmă că recomandă JSON-LD și este ceea ce folosim peste tot.
Principii înainte de exemple
- Descrieți conținut vizibil. Dacă prețul, evaluarea sau Întrebările frecvente nu sunt pe pagină, nu-l puneți în markup.
- Utilizați adrese URL absolute și adresa URL canonică a paginii.
- Fiți complet pentru proprietățile necesare și adăugați cele recomandate atunci când aveți date reale.
- Utilizați
@idpentru a lega entitățile. Autorul articolului este organizația definită o dată cu un@id, nu o copie nouă de fiecare dată. - Utilizați datele în ISO 8601 (
2026-10-28sau cu ora și fusul). - Nu inventați recenzii sau evaluări. Datele false
AggregateRatingsunt o cauză comună a acțiunilor manuale.
Exemplul 1. Organizație (și site web)
Puneți acest lucru pe pagina principală sau într-un grafic la nivelul întregului site. Acesta definește entitatea la care se referă alt marcaj.
{
"@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"
]
}
Exemplul 2. BreadcrumbList
Marcarea breadcrumb permite Google să arate calea paginii în loc de o adresă URL brută în rezultate. Trebuie să se potrivească cu pesmetul vizibil.
{
"@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"}
]
}
Exemplul 3. Articolul
Pentru postări de blog și ghiduri. Proprietățile care contează: titlul, datele, autorul, editorul, imaginea și adresa URL a paginii.
{
"@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}
}
Modificare dateModified numai atunci când conținutul se schimbă cu adevărat. Lovirea acestuia la fiecare implementare este o modalitate liniștită de a-ți pierde încrederea.
Exemplul 4. Produs cu Ofertă
Pentru paginile de produse cu un preț vizibil. Includeți disponibilitatea și moneda; adăugați aggregateRating sau review numai dacă recenziile reale sunt afișate pe pagină.
{
"@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"
}
}
Exemplul 5. Serviciu cu Oferta
Pentru servicii plătite, cum ar fi un audit cu preț fix sau o consultare orară. Folosim acest model pe paginile noastre de servicii.
{
"@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"
}
}
Exemplul 6. FAQPagina
Marcarea întrebărilor frecvente descrie o listă de întrebări și răspunsuri care sunt vizibile pe pagină. Rețineți că, începând cu 2023, Google arată rezultate bogate în întrebări frecvente doar pentru un set limitat de site-uri autorizate, așa că nu vă așteptați la răspunsuri extensibile în rezultate. Marcajul este încă valabil, încă poate fi citit de alte motoare de căutare și sisteme AI și menține Întrebările frecvente structurate într-un mod în care mașinile pot cita.
{
"@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."}
}
]
}
Combină totul într-un singur @grafic
O pagină are rareori o singură entitate. Puneți-le pe toate într-un singur script folosind @graph și faceți referire la entitățile partajate prin @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": []}
]
}
Generarea JSON-LD în siguranță în PHP
Nu concatena JSON manual. Un citat dintr-un titlu rupe întregul script și motorul de căutare îl ignoră în tăcere. Construiți o matrice PHP și codificați-o. Două steaguri contează: păstrați Unicode lizibil și protejați contextul HTML eliminând barele oblice și etichetele.
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 transformă < și > în secvențe de evacuare, astfel încât conținutul utilizatorului să nu poată închide niciodată eticheta de script devreme. Alimentați generatorul din aceleași date care redă pagina (titlu, preț, date), astfel încât marcajul și conținutul vizibil nu se pot separa. Într-un site multilingv, traduceți câmpurile de text și setați inLanguage per local; așa sunt produse articolele acestui blog și marcarea întrebărilor frecvente.
Validați și monitorizați
- Rich Results Test pentru eligibilitatea tipurilor de rezultate îmbogățite Google.
- Schema Markup Validator pentru sintaxa generală schema.org de orice tip.
- Rapoarte de îmbunătățire Search Console (breadcrumbs, produse, Întrebări frecvente și așa mai departe) pentru erori și avertismente la scară, după ce Google a accesat cu crawlere paginile dvs.
- Un test unitar care redă fiecare șablon și verifică dacă JSON-LD analizează și conține cheile necesare previne regresiile după refactorări.
Greșeli care te costă
- Markup pentru conținutul care nu este pe pagină (întrebări frecvente ascunse, evaluări inventate, prețuri care diferă de prețul vizibil).
- Mai multe blocuri aflate în conflict dintr-un plugin și un șablon, fiecare cu o
Organizationdiferită. - Adrese URL relative, date greșite sau
@idlipsă. - JSON spart de la construirea manuală a șirurilor și ghilimele fără escape.
- Tratarea schemei ca pe un truc de clasare. Este un instrument de claritate; pagina mai trebuie să merite să fie clasată.
Cum putem ajuta
Datele structurate sunt o parte a muncii noastre tehnice SEO: proiectăm schema pentru șabloanele dvs., implementăm generatorul în stiva dvs. și setăm validarea astfel încât să rămână corectă după lansări. Dacă doriți o privire de ansamblu asupra a ceea ce este în neregulă pe site-ul dvs., începeți cu lista de verificare a auditului SEO tehnic sau rezervați o consultație.
Întrebări frecvente
Ce sunt datele structurate JSON-LD ?
JSON-LD este un bloc de script care conține date schema.org în format JSON care descrie conținutul unei pagini către motoarele de căutare, de exemplu un articol, produs, organizație sau Întrebări frecvente.
Datele structurate îmbunătățesc clasamentele?
Nu direct. Ajută motoarele de căutare să înțeleagă pagina și o poate face eligibilă pentru rezultate bogate, ceea ce poate îmbunătăți rata de clic, dar nu este o cerință de clasare.
Unde pun scriptul JSON-LD ?
Oriunde în capul sau corpul HTML al paginii; majoritatea site-urilor o pun în cap. Trebuie să fie prezent în codul HTML redat pe care Google îl preia, astfel încât generarea pe partea serverului este cea mai sigură abordare.
Mai merită adăugată markup FAQPage?
Google afișează acum rezultate îmbogățite cu întrebări frecvente doar pentru un set limitat de site-uri, dar marcajul de întrebări frecvente valid rămâne lizibil de către alte motoare de căutare și sisteme AI. Adăugați-l numai pentru întrebări și răspunsuri care sunt vizibile pe pagină.
Cum testez datele structurate?
Utilizați Rich Results Test de la Google pentru rezultate îmbogățite eligibile, Schema Markup Validator pentru sintaxa generală și rapoartele de îmbunătățire Search Console pentru a urmări erorile pe întregul site.
Apel de descoperire gratuit
Adu un stack haotic sau o integrare blocată - Integrono mapează cel mai inteligent prim pas.
Primești o evaluare senior pe capcane de buget, dependențe și dacă merită să cumperi, să lipești sau să construiești - înainte să înceapă munca plătită. CEO-ul rămâne în buclă.