Sorun nedir?
Bir sayfada genellikle birden fazla şema bulunur: Article, BreadcrumbList, Organization, Person. Bunlar ayrı bloklar hâlinde eklendiğinde birbirleriyle ilişkileri belirsiz kalır.
Çözüm: @graph
@graph, birden fazla varlığı tek bir yapıda toplar ve @id ile aralarında bağ kurar:
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://site.com/#kurulus",
"name": "Marka Adı",
"url": "https://site.com",
"logo": "https://site.com/logo.png"
},
{
"@type": "WebSite",
"@id": "https://site.com/#site",
"url": "https://site.com",
"name": "Marka Adı",
"publisher": { "@id": "https://site.com/#kurulus" }
},
{
"@type": "Person",
"@id": "https://site.com/ekip/yazar#kisi",
"name": "Yazar Adı",
"jobTitle": "SEO Uzmanı"
},
{
"@type": "Article",
"@id": "https://site.com/blog/yazi#makale",
"headline": "Yazı Başlığı",
"author": { "@id": "https://site.com/ekip/yazar#kisi" },
"publisher": { "@id": "https://site.com/#kurulus" },
"isPartOf": { "@id": "https://site.com/#site" }
}
]
}
@id kullanımının değeri
- Aynı varlık tekrar tekrar tanımlanmaz
- Farklı sayfalardaki aynı varlık birleştirilir
- İlişkiler açıkça bildirilir
- Bakım kolaylaşır — tek yerde değişiklik
- Varlık tanınması güçlenir
@id nasıl yazılır?
Benzersiz ve kalıcı olmalıdır. Yaygın kullanım, adres + kesme işareti ile bir tanımlayıcıdır:
https://site.com/#kurulus
https://site.com/ekip/ad-soyad#kisi
https://site.com/blog/yazi#makale
Önemli olan, aynı varlığın her yerde aynı @id ile anılmasıdır.
Ne zaman gerekli?
| Durum | @graph gerekli mi? |
|---|---|
| Tek şema, basit sayfa | Hayır |
| Birkaç bağımsız şema | İsteğe bağlı |
| Yazar-kurum-içerik ilişkisi | Faydalı |
| Karmaşık varlık ağı | Önerilir |
| Çok sayfalı marka varlığı | Önerilir |
Uyarı: karmaşıklık maliyeti
@graph yapısı bakımı zorlaştırabilir ve hata riski taşır. Basit sitelerde ayrı bloklar yeterlidir.
Karmaşık yapı kurulacaksa, otomatik üretilmeli ve düzenli doğrulanmalıdır — elle yönetilen karmaşık şemalar zamanla bozulur.
Ne anlama gelir?
Şema graph (schema @graph), bir sayfadaki birden fazla yapısal veri öğesini birbirine bağlayarak tek bir bağlantılı yapı halinde sunma yöntemidir. Bir sayfada genellikle birden çok varlık bulunur: işletme, yazar, makale, görsel, ürün gibi. @graph yapısı, bu varlıkları ayrı ayrı ve kopuk tanımlamak yerine, aralarındaki ilişkileri de belirterek tek bir bütünleşik graf olarak ifade eder. Bu, arama motorunun sayfadaki varlıkları ve aralarındaki ilişkileri daha bütünsel biçimde anlamasını sağlar.
Ne sağlar?
- Birden fazla varlığı tek bir bağlantılı yapıda birleştirir
- Varlıklar arası ilişkileri net biçimde ifade eder
- Tekrarı önler (bir varlık bir kez tanımlanıp referanslanır)
- Sayfanın bütünsel anlaşılmasını güçlendirir
Neden faydalı?
Şema graph yapısı, özellikle karmaşık sayfalarda yapısal veriyi daha temiz ve güçlü biçimde ifade etmenin bir yoludur. Bir sayfada, örneğin bir blog yazısı düşünelim: bu sayfada makalenin kendisi (Article), yazarı (Person), yayınlayan kurum (Organization), sitenin kendisi (WebSite) ve görseller (ImageObject) gibi birden çok varlık vardır ve bunlar birbiriyle ilişkilidir (makaleyi şu kişi yazdı, şu kurum yayınladı). Bu varlıkları @graph içinde tanımlamak, hepsini tek bir bağlantılı yapıda birleştirir ve aralarındaki ilişkileri (yazar-makale, kurum-site) net biçimde belirtir. Bunun birkaç avantajı vardır: arama motoru sayfayı ve varlıkları daha bütünsel anlar, aynı varlık (örneğin kurum) birden çok yerde tekrarlanmak yerine bir kez tanımlanıp referanslanır (bu daha temiz ve tutarlıdır) ve varlık ilişkileri güçlenir ki bu modern varlık odaklı SEO için değerlidir. @graph, teknik olarak biraz daha ileri bir yapısal veri uygulamasıdır ve genellikle karmaşık sayfalar veya kapsamlı yapısal veri stratejileri için kullanılır; basit sayfalarda tek bir şema yeterli olabilir. Ancak zengin varlık ilişkileri olan sitelerde (özellikle E-E-A-T için yazar-içerik-kurum ilişkilerini net kurmak isteyen sitelerde), @graph yapısı yapısal veriyi daha güçlü ve tutarlı kılar. Şema graph, bir sayfanın varlıklarını ve ilişkilerini arama motorlarına bütünsel biçimde sunmanın ileri düzey bir yöntemidir.
Gerçek örnek
Bir yayıncı sitesi, blog yazılarında makale, yazar, kurum ve site şemalarını ayrı ayrı ve kopuk tanımlıyordu; ilişkiler net değildi ve kurum bilgisi her sayfada tekrarlanıyordu. Şemalar @graph yapısında birleştirilip ilişkiler (yazar-makale, kurum-site) net kurulduğunda, yapısal veri daha temiz ve tutarlı hale geldi ve varlık ilişkileri güçlendi.
Özet
Şema graph (@graph), bir sayfadaki birden fazla yapısal veri varlığını (makale, yazar, kurum, site) ilişkileriyle birlikte tek bir bağlantılı yapıda sunma yöntemidir. Varlıkların bütünsel anlaşılmasını sağlar, tekrarı önler ve varlık ilişkilerini güçlendirir. Karmaşık sayfalar ve varlık odaklı SEO için ileri düzey bir tekniktir.