Schema markup, web sayfalarının içeriğini arama motorlarının net biçimde anlayabileceği bir sözlükle etiketlemenin adıdır. Sayfanda görünen metin insan için yazılır; schema markup ise aynı bilgiyi makineye "bu bir tarif", "bu bir ürün fiyatı", "bu bir SSS" diye açıkça söyler. Google bu yapılandırılmış veriyi okuyunca arama sonuçlarında yıldızlı puanlar, açılır soru-cevaplar veya fiyat etiketleri gibi zengin sonuçlar gösterebilir. Bu yazıda schema markup'ın ne olduğunu ve JSON-LD ile pratikte nasıl ekleneceğini adım adım anlatıyorum.
Yapılandırılmış veri tam olarak ne işe yarar?
Arama motoru bir sayfayı tararken HTML'i okur ama metnin anlamını tahmin etmek zorundadır. "49,90" bir fiyat mı, bir saat mi, yoksa bir ürün kodu mu? Yapılandırılmış veri bu belirsizliği ortadan kaldırır: ilgili değeri standart bir şemaya bağlayıp "bu bir Offer ve price alanı budur" dersin. schema.org bu ortak sözlüğü tanımlar; Google, Bing ve diğer motorlar onu kullanır.
Kazanımlar somuttur:
- Arama sonucunda öne çıkan zengin görünümler (yıldız, fiyat, SSS, etkinlik tarihi).
- Daha yüksek tıklama oranı, çünkü sonucun daha fazla yer kaplar ve dikkat çeker.
- Bilgi grafiği ve sesli asistanlar için temiz, makine-okur veri.
Önemli bir uyarı: schema markup sıralamayı doğrudan garanti etmez. Görünürlüğü ve tıklamayı iyileştiren bir destektir, sihirli bir sıralama düğmesi değil.
JSON-LD neden tercih edilir?
Yapılandırılmış veriyi sayfaya gömmenin üç yolu vardır: Microdata, RDFa ve JSON-LD. Google açıkça JSON-LD'yi önerir, çünkü işaretleme HTML etiketlerinin arasına serpiştirilmez; tek bir <script> bloğunda toplanır. Bu sayede tasarımı bozmadan, içeriği değiştirmeden, hatta sayfanın altına dinamik olarak ekleyebilirsin.
Temel iskelet şöyle görünür:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Schema Markup Nedir ve Nasıl Eklenir",
"author": { "@type": "Person", "name": "Aslain" },
"datePublished": "2026-06-27"
}
</script>
İki alan her zaman zorunludur: @context (her zaman https://schema.org) ve @type (içeriğin türü). Geri kalan alanlar seçtiğin türe göre değişir.
Doğru türü seçmek
schema.org yüzlerce tür tanımlar ama pratikte birkaç tanesi işlerin çoğunu görür. Sayfanın amacına göre seç:
Article/BlogPosting— blog yazıları ve haber içerikleri.Product+Offer+AggregateRating— e-ticaret ürün sayfaları.FAQPage— soru-cevap blokları.BreadcrumbList— site içi konum / kırıntı navigasyonu.OrganizationveWebSite— kurumsal kimlik ve site adı.LocalBusiness— fiziksel adresi olan işletmeler.
Tek bir sayfada birden çok türü birlikte kullanabilirsin; her birini ayrı bir script bloğuna koymak en temiz yöntemdir.
Adım adım: bir FAQ schema'sı ekleme
En sık kullanılan ve en çabuk sonuç veren türlerden biri FAQPage'dir. Sayfanda zaten görünen soru-cevapları işaretlersin; uydurma soru eklemek politika ihlalidir, o yüzden yalnızca sayfada gerçekten var olan içeriği etiketle.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "Schema markup sıralamayı yükseltir mi?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Doğrudan değil; tıklama oranını artırarak dolaylı katkı sağlar."
}
},
{
"@type": "Question",
"name": "JSON-LD'yi nereye koymalıyım?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Sayfanın head ya da body kısmına bir script bloğu olarak ekleyebilirsin."
}
}
]
}
</script>
Süreç üç adımdan ibaret: ilgili türü seç, gerçek içerikten alanları doldur, çıktıyı bir script etiketine koy. WordPress kullanıyorsan Yoast veya Rank Math gibi eklentiler bu bloğu otomatik üretir; Laravel gibi bir framework'te Blade şablonunda kendin de elle yazabilirsin.
İşaretlemeyi test etmek ve doğrulamak
Schema yayına almadan önce mutlaka doğrula. Yanlış veya eksik alanlar zengin sonucu tamamen iptal eder. İki resmi araç vardır:
- Rich Results Test — bir URL veya kod parçası verip Google'ın hangi zengin sonuçlara uygun gördüğünü gösterir.
- Schema Markup Validator (schema.org) — şemanın sözdizimsel geçerliliğini denetler.
Yayından sonra Google Search Console'daki "Geliştirmeler" raporları gerçek tarama sonuçlarındaki hataları ve uyarıları gösterir. Schema'yı bir kez kurup unutma; içerik değişince işaretlemeyi de güncel tut, yoksa görünen metinle veri uyuşmaz ve Google bunu görmezden gelir.
Sık yapılan hatalar
- Görünmeyen içeriği işaretlemek: JSON-LD'deki bilgi, sayfada kullanıcının da gördüğü bilgiyle örtüşmeli.
- Yanlış tür seçmek: bir blog yazısına
Productşeması koymak doğrulamayı geçse bile zengin sonuç getirmez. - Zorunlu alanları atlamak: örneğin
Productiçinnameve geçerli biroffersya dareviewbeklenir. - Tek sayfada çelişen veri: aynı bilgiyi iki farklı blokta farklı değerlerle vermek.
Sık Sorulan Sorular
Schema markup eklemek için kod bilmem şart mı?
Hayır. CMS eklentileri (Yoast, Rank Math, Schema Pro) işaretlemeyi arayüzden üretir. Ancak JSON-LD'nin mantığını anlamak, hataları ayıklamak ve özel türler eklemek için faydalıdır.
Tüm sayfalara schema eklemeli miyim?
Her sayfaya gerek yok. Zengin sonuç potansiyeli olan sayfalara odaklan: ürünler, makaleler, SSS'ler, etkinlikler, tarifler ve yerel işletme bilgisi. Anlamsız yere her yere eklemek fayda getirmez.
Schema'yı ekledim ama zengin sonuç çıkmıyor, neden?
Google işaretlemeyi uygun gördüğünde gösterir, garanti değildir. Doğrulamanın hatasız geçtiğinden, içeriğin gerçekten görünür olduğundan ve sayfanın indekslendiğinden emin ol; ardından taramanın güncellenmesi için zaman tanı.
Sitende zengin sonuçlardan yararlanmak ister misin? Doğru türü seçmekten JSON-LD'yi kurmaya ve Search Console'da doğrulamaya kadar tüm schema markup sürecini birlikte planlayabiliriz. Benimle iletişime geç ve sayfalarını arama sonuçlarında öne çıkaralım.