Harika bir konu ve günümüz e-ticaret dünyasında pek çok işletmenin başını ağrıtan bir mesele! Türkiye'nin önde gelen bir uzmanı olarak bu soruya derinlemesine bir bakış açısıyla yaklaşmaktan ve size en doğru yolu göstermekten memnuniyet duyarım. Çok varyasyonlu ürün sayfalarınız için Product Schema JSON-LD kurulumunda uygulamanız gereken en doğru ve hatasız yaklaşımı gelin birlikte inceleyelim.
Çok Varyasyonlu Ürün Sayfaları İçin Product Schema JSON-LD Kurulumunda Ustaca Yaklaşım
E-ticaret sitenizde ürünlerinizin beden, renk, malzeme gibi pek çok farklı varyasyonu olduğunu biliyorum. Bu durum, hem kullanıcı deneyimi açısından zenginlik sunarken, hem de arama motorlarına ürünleri doğru bir şekilde anlatma konusunda bazı zorlukları beraberinde getiriyor. Google Search Console'da sürekli "eksik alan" veya "geçersiz değer" hataları almanız, aslında bu karmaşıklığın doğal bir sonucu. Gelin, bu karmaşayı nasıl çözeceğimizi ve Product Schema JSON-LD yapısını nasıl kurmamız gerektiğini adım adım konuşalım.
Neden Çok Varyasyonlu Ürünler İçin Schema Kurulumu Bu Kadar Önemli?
Öncelikle, neden bu kadar uğraştığımıza bir göz atalım:
Google'ın Anlaması: Google, sitenizdeki ürünleri en doğru şekilde anlamak ister. Varyasyonlar doğru bir şekilde tanımlanmadığında, arama motoru ürününüzün tüm seçeneklerini veya fiyat aralığını tam olarak kavrayamayabilir.
Zengin Sonuçlar (Rich Snippets): Doğru schema kurulumu sayesinde ürünleriniz arama sonuçlarında fiyat, stok durumu, değerlendirme puanı gibi ek bilgilerle birlikte gösterilir. Bu "zengin sonuçlar", kullanıcıların dikkatini çeker ve tıklama oranınızı (CTR) artırır.
Kullanıcı Güveni: Arama sonuçlarında doğru ve güncel bilgileri görmek, kullanıcıların markanıza ve ürününüze olan güvenini artırır.
Hata Azaltma: Düzenli ve doğru bir yapı, Search Console'daki "eksik alan" ve "geçersiz değer" gibi hataları minimuma indirir, böylece SEO performansınızı olumsuz etkileyebilecek sorunlardan kurtulursunuz.
Ana Problem: Her Varyasyon Ayrı Ürün mü, Tek Ürünün Varyantları mı?
İşte zurnanın zırt dediği yer ve en sık yapılan yanılgıların başında geleni! "Her varyasyonu ayrı bir ürün gibi mi işlemeliyim yoksa tek ürün altında varyantları mı belirtmeliyim?" sorusu kilit nokta.
Genel ve En Doğru Yaklaşım:
Eğer ürününüzün farklı varyasyonları (beden, renk vb.) aynı ürün detay sayfasında (yani aynı URL üzerinde) seçilip sepete eklenebiliyorsa, bu varyasyonların her birini ana ürünün altında ayrı birer Offer (Teklif) olarak belirtmek en doğru yaklaşımdır.
Peki, neden böyle? Çünkü Google, temel olarak bir URL'nin tek bir sayfayı temsil etmesini bekler. Eğer o URL'de "Unisex Tişört" adında tek bir ürün sergileniyor ve kullanıcı seçimiyle "Mavi S Beden" veya "Kırmızı M Beden" gibi varyasyonlara ulaşıyorsa, bu durum ana ürünün farklı teklifleridir.
Peki ya istisna durumlar?
Bazı durumlarda (özellikle çok büyük ve karmaşık varyasyon setlerinde veya ayrı listeleme stratejileri benimsenen yerlerde), her bir varyasyonun (örneğin "Mavi S Beden Tişört") kendine ait benzersiz bir URL'si olabilir. Bu gibi durumlarda, o URL'ye özel bir Product şeması hazırlanabilir. Ancak sizin senaryonuzda, tek bir sayfa üzerinde varyasyon seçiminden bahsettiğiniz için, ilk yaklaşım (tek ürün altında çoklu Offer) daha uygun olacaktır.
Adım Adım En Doğru Kurulum: Ana Ürün ve Varyasyonları Anlatmak
Şimdi gelin, bu ana ürüne bağlı çoklu Offer yapısını nasıl kuracağımıza bakalım.
1. Ana Ürün Bilgileri (Product Tipi)
Product Schema JSON-LD'nizin en tepesinde, tüm varyasyonlarınız için ortak olan ana ürün bilgilerini tanımlamalısınız. Bu, ürün sayfanızda gördüğünüz, tüm varyasyonlar için değişmeyen temel bilgilerdir.
@type: "Product" olmalı.
name: Ürünün genel adı (örneğin: "Unisex Basic Tişört").
url: Ürünün ana URL'si.
description: Ürünün genel açıklaması.
image: Ürünün ana, genellikle jenerik veya birden fazla varyasyonu gösteren görseli.
brand: Ürünün markası.
aggregateRating: Ürüne ait ortalama değerlendirme puanı ve inceleme sayısı (varsa).
2. Varyasyonları Tanımlamak: Her Biri Ayrı Bir Teklif (Offer Tipi)
İşte varyasyonlarınızı Google'a doğru şekilde anlatacağınız en kritik bölüm. Ana Product şemasının içine, offers adında bir dizi (array) ekleyeceksiniz. Bu dizi, her bir satın alınabilir varyasyonunuzu temsil eden ayrı Offer objeleri içerecek.
Her bir Offer objesi şunları içermelidir:
@type: "Offer" olmalı.
sku: Her bir varyasyon için benzersiz olmalıdır. Bu, "Mavi S Beden" tişört için farklı, "Kırmızı M Beden" tişört için farklı bir koddur. Stok kodu veya ürün barkodu gibi benzersiz bir tanımlayıcı kullanın.
priceCurrency: Fiyatın para birimi (örneğin: "TRY").
price: O spesifik varyasyonun fiyatı. Fiyatlar varyasyonlara göre değişiyorsa, her Offer objesinde kendi fiyatı olmalı.
availability: Stok durumu (örneğin: http://schema.org/InStock veya http://schema.org/OutOfStock). Stokta olmayan varyasyonları OutOfStock olarak belirtmeyi unutmayın.
itemCondition: Ürünün durumu (örneğin: http://schema.org/NewCondition).
url: Eğer varyasyonun kendi URL'si yoksa, bu alana ana ürün sayfasının URL'sini yazın.
- Can Alıcı Nokta: Varyasyonun Kendisi (
itemOffered veya ProductModel)
- Her
Offer objesinin içine itemOffered adında bir özellik ekleyeceksiniz. Bu özellik, o spesifik varyasyonun detaylarını barındıracak.
itemOffered'ın @type'ı genellikle yine "Product" (veya "ProductModel" gibi daha spesifik bir tip) olur.
- İçine:
name: O varyasyonun tam adı (örneğin: "Unisex Basic Tişört - Mavi, S Beden").
color: Varyasyonun rengi ("Mavi").
size: Varyasyonun bedeni ("S").
material: (Varsa) Varyasyonun malzemesi ("Pamuk").
image: (Opsiyonel ama önerilir) O spesifik varyasyona ait özel bir görsel varsa buraya ekleyin. Bu, Google Görseller'de veya zengin sonuçlarda o varyasyonun doğru görseliyle çıkmasına yardımcı olur.
Örnek Yapı (Kavramsal JSON-LD Taslağı)
Aşağıdaki taslak, yukarıda anlattığımız yapıyı daha net görmenizi sağlayacaktır. Bu, sizin sitenizdeki ürünlere uyarlayabileceğiniz bir şablondur:
`json
{
" @context": "http://schema.org",
" @type": "Product",
"name": "Unisex Basic Tişört",
"url": "https://www.siteniz.com/unisex-basic-tisort",
"description": "Her mevsim rahatlıkla giyilebilecek, %100 pamuklu, konforlu basic tişört.",
"image": "https://www.siteniz.com/img/unisex-basic-tisort-ana.jpg", // Tüm varyasyonlar için ana görsel
"brand": {
" @type": "Brand",
"name": "Markanız"
},
"aggregateRating": { // Ürünün genel değerlendirmeleri (tüm varyasyonlar için ortak)
" @type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "120"
},
"offers": [ // Tüm varyasyonlarınız bu dizinin içinde yer alacak
{
" @type": "Offer",
"sku": "TSRT-MVI-S", // Mavi, S beden için benzersiz SKU
"priceCurrency": "TRY",
"price": "149.90",
"availability": "http://schema.org/InStock",
"itemCondition": "http://schema.org/NewCondition",
"url": "https://www.siteniz.com/unisex-basic-tisort", // Varyasyonun ayrı URL'si yoksa ana URL
"itemOffered": { // Bu kısım o spesifik varyasyonu tanımlıyor
" @type": "Product",
"name": "Unisex Basic Tişört - Mavi, S Beden",
"color": "Mavi",
"size": "S",
"image": "https://www.siteniz.com/img/unisex-basic-tisort-mavi-s.jpg" // Mavi, S beden görseli
}
},
{
" @type": "Offer",
"sku": "TSRT-KRM-M", // Kırmızı, M beden için benzersiz SKU
"priceCurrency": "TRY",
"price": "159.90",
"availability": "http://schema.org/InStock",
"itemCondition": "http://schema.org/NewCondition",
"url": "https://www.siteniz.com/unisex-basic-tisort",
"itemOffered": {
" @type": "Product",
"name": "Unisex Basic Tişört - Kırmızı, M Beden",
"color": "Kırmızı",
"size": "M",
"image": "https://www.siteniz.com/img/unisex-basic-tisort-kirmizi-m.jpg" // Kırmızı, M beden görseli
}
},
{
" @type": "Offer",
"sku": "TSRT-BEY-XL-PAMUK", // Malzeme varyasyonu eklenmiş bir örnek
"priceCurrency": "TRY",
"price": "169.90",
"availability": "http://schema.org/OutOfStock", // Stokta yoksa böyle belirtin
"itemCondition": "http://schema.org/NewCondition",
"url": "https://www.siteniz.com/unisex-basic-tisort",
"itemOffered": {
" @type": "Product",
"name": "Unisex Basic Tişört - Beyaz, XL, Pamuklu",
"color": "Beyaz",
"size": "XL",
"material": "Pamuk",
"image": "https://www.siteniz.com/img/unisex-basic-tisort-beyaz-xl.jpg"
}
}
// ... Diğer tüm varyasyonlar için benzer Offer objeleri buraya eklenecek ...
]
}
`
Bu örnekte gördüğünüz gibi, ana ürün "Unisex Basic Tişört" olarak tanımlanıyor, ancak her bir offers objesi, o tişörtün farklı bir bedeni, rengi veya malzemesi gibi spesifik bir varyasyonunu, kendi fiyatı, SKU'su ve stok durumuyla birlikte anlatıyor.
Sık Yapılan Hatalar ve Onlardan Kaçınma Yolları
Search Console'daki "eksik alan" veya "geçersiz değer" hatalarını önlemek için şu noktalara dikkat etmelisiniz:
- Zorunlu Alanları Atlamayın:
price, priceCurrency, availability gibi alanlar Offer objesi içinde mutlaka bulunmalı ve doğru formatta belirtilmelidir.
- Geçersiz Değerler Kullanmayın: Özellikle
availability için http://schema.org/InStock, http://schema.org/OutOfStock, http://schema.org/PreOrder gibi Schema.org standartlarına uygun değerleri kullanmalısınız. Kendi uydurduğunuz "Stokta Var" gibi metinler geçersiz sayılacaktır.
- SKU Benzersizliği: Her bir varyasyonun (örneğin "Mavi S Beden" ve "Mavi M Beden") kendine ait benzersiz bir SKU'su olduğundan kesinlikle emin olun. Bu, hem sizin envanter yönetimi hem de Google'ın ürünleri ayırt etmesi için hayati öneme sahiptir.
AggregateOffer Yanlış Kullanımı: AggregateOffer genellikle aynı ürünün farklı satıcılar tarafından sunulduğu durumlar için kullanılır. Sizin varyasyon senaryonuzda, offers dizisi içindeki tekil Offer objelerini kullanmak doğru yaklaşımdır.
- Statik Schema Sorunu: Ürünlerinizin fiyatları, stok durumları veya diğer özellikleri değiştikçe, sayfanızdaki JSON-LD schema'sının da otomatik olarak güncellendiğinden emin olun. Manuel güncelleme yapmak pratik değildir ve hatalara yol açar.
- Görsel Tutarlılığı: Mümkünse,
itemOffered içindeki image alanına o spesifik varyasyona ait görseli ekleyin. Bu, kullanıcıların arama sonuçlarında doğru ürünü görmesini sağlar.
Search Console Hatalarını Anlamak ve Çözmek
Search Console'daki hataları gidermek için en büyük yardımcınız Google'ın Zengin Sonuçlar Testi (Rich Results Test) aracıdır.
1. Ürününüzün URL'sini bu araca yapıştırın.
2. Test sonucunda "Ürün" şeması altında gördüğünüz tüm hata ve uyarıları dikkatlice inceleyin.
3. Hatanın detayında hangi alanın eksik veya geçersiz olduğu açıkça belirtilir. Örneğin, "'price' alanı eksik" veya "'availability' için geçersiz değer" gibi.
4. Bu hataları, yukarıda anlattığımız doğru yapıya göre düzelttikten sonra tekrar test edin.
5. Search Console'da hata düzeltmelerinizi bildirmek için "Düzeltmeyi Doğrula" seçeneğini kullanabilirsiniz.
Son Söz: Sürekli Test Edin ve Güncel Kalın
Product Schema JSON-LD kurulumu, bir kere yapıp bırakacağınız bir şey değildir. Schema.org standartları gelişebilir, Google'ın beklentileri değişebilir. Bu nedenle:
Düzenli Testler: Yeni ürünler eklediğinizde veya mevcut ürünlerde büyük değişiklikler yaptığınızda mutlaka Zengin Sonuçlar Testi'ni kullanın.
Otomasyon: Schema oluşturma sürecini mümkün olduğunca otomatikleştirerek insan hatasını en aza indirin. E-ticaret platformunuzun bu konuda sunduğu entegrasyonları veya eklentileri değerlendirin.
* Değer Katın: Unutmayın, doğru schema sadece Google'ın sizi daha iyi anlamasını sağlamakla kalmaz, aynı zamanda potansiyel müşterilerinize daha iyi bir alışveriş deneyimi sunmanızı sağlar.
Bu adımları izleyerek, çok varyasyonlu ürün sayfalarınız için Product Schema JSON-LD kurulumunu en doğru ve hatasız şekilde gerçekleştirebilir, e-ticaret sitenizin arama motorlarındaki görünürlüğünü ve performansını önemli ölçüde artırabilirsiniz. Başarılar dilerim!