JSON-LD yapılandırılmış veri nasıl eklenir? BlogPosting, BreadcrumbList ve Organization örnekleri
BlogPosting, BreadcrumbList ve Organization şemalarını sayfanın görünen içeriğiyle uyumlu biçimde JSON-LD olarak oluşturun, doğrulayın ve yayınlayın.
JSON-LD yapılandırılmış veri, sayfadaki kişi, kurum, makale ve gezinme yolunu arama motorlarının daha açık yorumlayabilmesi için kullanılan makine tarafından okunabilir bir veri bloğudur. Google, desteklediği arama görünümü türleri için genellikle JSON-LD biçimini önerir.
Şema eklemek sıralama veya zengin sonuç garantisi vermez. İşaretlenen bilgi sayfada kullanıcıya görünmeli, gerçek içerikle aynı olmalı ve her sayfanın kendi URL, başlık, görsel ve tarih değerleriyle sunulmalıdır.
JSON-LD sayfaya nasıl eklenir?
Veriyi application/ld+json türündeki script etiketiyle head veya body içinde yayımlayabilirsiniz. Aşağıdaki BlogPosting örneğindeki alanları sunucu tarafında mevcut blog kaydından üretin:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "JSON-LD yapılandırılmış veri nasıl eklenir?",
"description": "Blog sayfaları için uygulamalı JSON-LD rehberi.",
"image": ["https://www.example.com/images/json-ld.webp"],
"datePublished": "2026-11-14",
"dateModified": "2026-11-14",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.example.com/blog/json-ld-rehberi"
},
"author": {
"@type": "Organization",
"name": "Example Teknoloji",
"url": "https://www.example.com/"
},
"publisher": {
"@type": "Organization",
"name": "Example Teknoloji",
"logo": {
"@type": "ImageObject",
"url": "https://www.example.com/logo.png"
}
}
}
</script>
Başlık ve açıklama görünür sayfayla aynı anlamı taşımalıdır. dateModified değerini her sayfa isteğinde otomatik olarak bugüne çevirmeyin; yalnızca anlamlı içerik değişikliğinde güncelleyin.
BreadcrumbList örneği
BreadcrumbList, kullanıcının gördüğü kategori yolunu tanımlar. Konumlar birden başlayarak sıralanır:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Blog",
"item": "https://www.example.com/blog"
},
{
"@type": "ListItem",
"position": 2,
"name": "Nasıl yazılır?",
"item": "https://www.example.com/blog/nasil-yazilir"
},
{
"@type": "ListItem",
"position": 3,
"name": "JSON-LD yapılandırılmış veri nasıl eklenir?"
}
]
}
</script>
Breadcrumb bağlantıları canonical URL düzeniyle uyumlu olmalı, hayalî veya kullanıcıya gösterilmeyen kategori yolları eklenmemelidir.
Organization verisini tek bir kimlik altında birleştirin
Kurum adını, URL’sini ve logosunu her sayfada farklı değerlerle tekrar etmek yerine sabit bir @id kullanabilirsiniz. Aynı sayfadaki BlogPosting publisher alanı bu kimliğe bağlanabilir:
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://www.example.com/#organization",
"name": "Example Teknoloji",
"url": "https://www.example.com/",
"logo": "https://www.example.com/logo.png"
}
Birden fazla düğümü tek script içinde @graph ile de sunabilirsiniz. Ayrı script blokları kullanmak da geçerlidir; önemli olan kimliklerin ve alanların çelişmemesidir.
Dinamik üretimde güvenliği unutmayın
Başlık gibi kullanıcı tarafından girilebilen değerleri JSON’a string birleştirerek yerleştirmeyin. Kullandığınız dilin JSON serializer’ı ile üretin; böylece tırnak, satır sonu ve özel karakterler doğru kaçışlanır. HTML’e yerleştirirken kapanış etiketi gibi dizilere karşı framework’ünüzün güvenli çıktı yöntemini kullanın.
Yayınlamadan önce iki ayrı test yapın
Google Rich Results Test ile Google’ın desteklediği zengin sonuç alanlarını, Schema.org Validator ile genel şema yapısını kontrol edin. Ardından canlı HTML kaynağında script’in bulunduğunu, URL’lerin 200 döndüğünü ve görselin taranabilir olduğunu doğrulayın. Search Console geliştirme raporları yayından sonraki gerçek tarama durumunu gösterir.
Kısa rehber
Sık yapılan hata
Sayfada görünmeyen değerlendirme, yazar veya kategori bilgisini sırf şema daha dolu görünsün diye JSON-LD içine eklemek.