Görünür sayfanın, render edilmiş HTML'nin ve JSON-LD'nin aynı şeyi söylemesi; her özelliğin bir sorumlusu, her sapmanın da onu üreten şablonda yakalanması.

Bir sayfa browser'da eksiksiz görünebilir ve yine de crawler'a eksik bir HTML olarak ulaşabilir; doğrulama aracından geçen bir işaretleme de ziyaretçinin sayfada hiç bulamayacağı bir şeyi tarif ediyor olabilir. Biz kaynak kodun, render edilen sayfanın ve JSON-LD'nin ayrı ayrı ne söylediğini kaydediyor, üçü çeliştiğinde belirtiyi tek tek sayfalarda yamamak yerine sahip şablonu düzeltiyoruz. Görünür sayfa, render edilmiş HTML ve yapılandırılmış veri aynı bilgiyi söylüyor. Ziyaretçinin doğrulayamayacağı iddiaları kaldırıyor, zengin sonuç sözü de vermiyoruz.

Bir Zeo mühendisi, kaynak HTML, render edilmiş sayfa ve JSON-LD başlıklı üç paneldeki varlık kartlarını eşleşene kadar hizalıyor.

Birlikte çalıştığımız 500'den fazla markadan birkaçı

Tüm referansları gör
  • Cimri
  • Yeditepe Üniversitesi
  • Güven Hastanesi
  • Logo Yazılım
  • Silverline
  • Gedik Yatırım
  • Amazon
  • BMW
  • Shell
  • Hyundai
  • PepsiCo
  • Red Bull
  • MediaMarkt
  • Decathlon
  • Trendyol
  • Hepsiburada
  • Sahibinden.com
  • Bayer
  • Sanofi
  • EY
  • KPMG
  • DenizBank
  • Acıbadem Sağlık Grubu
  • Abdi İbrahim

Önce sayfanın ve işaretlemenin gerçekte ne söylediğini kaydediyoruz. Uyuşmazlık ortak bir şablona dayanıyorsa sayfa sayfa tahmin yürütmek yerine sorunu kaynağında düzeltiyor, ardından olağan ve zor durumlarda doğruluğun korunduğunu yeniden test ediyoruz.

  1. Sayfanın farklı hâllerini kaydediyoruz

    Temsili şablonlar ve durumlar için kaynak HTML'yi, sunucunun ürettiği HTML'yi, browser'da render edilen DOM'u ve JSON-LD'yi kaydediyoruz. İzin seçeneklerini ve uç durumları da dahil ediyoruz. Karşılaştırmaya geçmeden önce kaydettiğimiz durumların önemli uç senaryoları gerçekten temsil ettiğini teknik SEO tarafındaki sorumlu doğruluyor.

    Ziyaretçinin ve botun gerçekte ne aldığını gösteren güvenilir bir başlangıç kaydı çıkıyor.

  2. Görünen bilgiyle makinenin okuduğunu karşılaştırıyoruz

    Her varlığı ve özelliği, ziyaretçinin gerçekten görebildiği metin ve veriyle yan yana koyuyoruz. Eksik, çelişkili ya da sürdürülemeyecek alanları işaretliyoruz. İşaretlenen uyuşmazlıkların gerçek bir sorun mu olduğunu, veri kaynaklarının sorumlularıyla birlikte teyit ediyoruz.

    Gerçek sorunları zararsız doğrulayıcı gürültüsünden ayıran, özellik bazlı bir karşılaştırma tablosu elde ediyoruz.

  3. Sorunun çıktığı şablonu düzeltiyoruz

    Onaylanan özellikleri sorumlusu belli alanlara bağlıyor, boş ya da eskimiş veriler için kural yazıyor ve uyuşmazlığın başladığı render akışını düzeltiyoruz. Alan eşlemelerini ve eskiyen veri kurallarını, şablon düzeltmesi tek bir sürümlü değişiklik olarak yayına çıkmadan önce onaylıyoruz.

    Her sayfaya ayrı yama atmak yerine, sürümü takip edilebilen tek bir şablon düzeltmesi çıkıyor.

  4. Olağan ve sıra dışı durumları ayrı ayrı sınıyoruz

    Değişikliği daha geniş bir alana açmadan önce canlı örnekleri boş alan, değişen fiyat, stok dışı ürün, farklı izin durumu ve JavaScript hatası senaryolarıyla sınıyoruz. Sıra dışı durumların her birindeki sonuca bakan kişi, yayının daha geniş bir alana açılacak kadar doğru kalıp kalmadığına karar veriyor.

    İçerik kusurlu geldiğinde bile doğruluğunu koruyan bir yayın ortaya çıkıyor.

Sayfanın her hâlini yakalayan ve karşılaştıran yapay zeka; sorunu ve düzeltmeyi onaylayan insan.

Yapay zeka her temsili şablon ve izin durumu için kaynak HTML'yi, sunucunun ürettiği HTML'yi, browser'da render edilen DOM'u ve JSON-LD'yi tek geçişte yakalıyor, her varlığı ve özelliği görünür metin ve veriyle karşılaştırıp gerçek sorunları zararsız doğrulayıcı gürültüsünden ayırıyor, onaylanan her özelliği sorumlusu belli bir alanla eşleştirip alan boş ya da eski geldiğinde devreye girecek kuralların taslağını çıkarıyor, boş alan, değişen fiyat, stok dışı ürün, farklı izin durumu ve JavaScript hatası senaryolarını canlı örneklerde test ediyor. Hiçbir şeyi kendi başına onaylamıyor. Ziyaretçinin sayfada ya da onaylı bir kaynakta doğrulayamayacağı yorum, fiyat, stok, yazarlık veya ilişki bilgisini işaretlemiyoruz, zengin sonuç garantisi vermiyoruz ve temsili render ile güncellik testi yapmadan şablon genelinde şema değişikliği yayınlamıyoruz.

Yapılandırılmış veriyi görünür sayfayla aynı çizgide tutmak için dört somut çıktı hazırlıyoruz.

  • Karar matrisi

    Render tutarlılığı matrisi

  • Değerlendirme tablosu

    Özellik uygunluğu değerlendirmesi

  • Politika dokümanı

    Özellik ve kaynak kuralları

  • Dashboard

    İşaretleme sağlığı görünümü

Şu olduğunda tamam sayarız: Tutarlılık matrisi, özellik değerlendirmesi, kaynak kuralları ve sağlık görünümü; her temsili şablon durumu için kaynak, render edilmiş, görünür ve JSON-LD değerleri yan yana durduğunda, her özellik zorunlu, yararlı, koşullu ya da kapsam dışı olarak dayandığı kurala bağlı biçimde işaretlendiğinde, yayınlanan her değerin tek kaynağı, tek sorumlusu ve eksik ya da eskimiş veri davranışı tanımlandığında ve canlı hatalar şablon ile özelliğe göre gruplandığında tamamlanmış oluyor.

Bir doğrulama aracından geçmek tek başına yeterli olmuyor. Asıl mesele, sayfa içeriği, fiyat ya da stok durumu değiştiğinde işaretlemenin de doğru kalması.

Şu durumlarda iyi bir seçim

  • Kaynak HTML, render edilmiş sayfa ve yapılandırılmış veri şablona, cihaza ya da izin durumuna göre farklı şeyler söylüyor.
  • İşaretleme duruyor ama sayfanın hedeflediği arama zenginleştirmesine gerçekten uygun olup olmadığı belirsiz.
  • Şema alanları birden fazla sistemden besleniyor. Fiyat, bulunabilirlik, yazar ya da varlık kimliği için sorumlusu belli tek bir kaynağa ihtiyacınız var.

Şu durumlarda başka bir çalışma daha doğru

  • Gerçek sayfada karşılığı görünmese bile sırf doğrulama aracı kabul ettiği için işaretleme eklemek istiyorsanız burada aradığınızı bulamazsınız.
  • Geçerli yapılandırılmış verinin zengin sonuç olarak gösterileceğine dair bir garanti arıyorsanız, o garantiyi kimse veremiyor.

Bunlardan biri sizin durumunuza daha yakınsa, buradan başlayın: Teknik SEO

Şu olduğunda tamam sayarız: Temsili şablonlar görünür içerikte ve JSON-LD'de aynı bilgiyi gösteriyor. Her özelliğin kaynağı ve sorumlusu belli oluyor, sapmalar da yayılmadan yakalanıyor.

  • Screaming Frog

    site genelinde schema doğrulamasıyla birlikte ham ve render edilmiş HTML karşılaştırması

  • Sitebulb

    tür ve template'e göre gruplanan property düzeyinde schema hataları

  • Schema App

    sürdürülebilir alan eşlemeleri ve sürekli yayın sağlığı izlemesi

  • Botify

    site genelinde JavaScript render boşlukları, içerik ve markup'ta

  • Lumar

    schema ve içerik kaymaları için zamanlanmış render edilmiş crawl'lar

  • Google Search Console

    canlı geliştirme hataları, etkilenen URL'ler ve yayın sonrası kapsam

  • Bing Webmaster Tools

    canlı sayfalarda Bingbot'un gerçekten okuduğu markup kontrolleri

Birkaç temsili URL'yi ve mevcut doğrulama çıktınızı paylaşın. Görünür içerikle makinenin okuduğu verinin nerede ayrıldığını birlikte bulalım.
Bize yazın

Bu çalışma, temel HTML işaretleme çalışmasından nasıl ayrılıyor?

Bu yöntem kaynak kodun, browser'ın ve yapılandırılmış verinin farklı şablon durumlarında ne ürettiğine bakıyor, yani bütün render akışıyla ilgileniyor. HTML işaretleme çalışması ise başlıkları, sayfa bölgelerini, linkleri ve canonical ipuçlarını daha geniş kapsamda ele alıyor. İkisi, render edilmiş sayfadaki bilgiyle JSON-LD'nin uyuşması gereken noktada kesişiyor.

Yapılandırılmış veri testini geçmek işin bittiği anlamına mı geliyor?

Hayır. Test yalnızca söz diziminin ve bazı uygunluk koşullarının karşılandığını gösteriyor. Bilginin görünür olup olmadığına, güncel bir kaynağa bağlanıp bağlanmadığına ve farklı render durumlarında tutarlı kalıp kalmadığına ayrıca bakıyoruz.

Başlamadan önce neye ihtiyaç var?

Temsili canlı URL'lere, şablonlara ve veri alanlarına erişim gerekiyor. Varsa doğrulama ya da geliştirme raporlarını da kullanıyoruz. Bir de işaretlemenin aktaracağı bilgilerin kimlerin sorumluluğunda olduğunu bilmemiz lazım.

Fiyatın ya da stok durumunun sık değiştiği sayfalarda nasıl ilerliyorsunuz?

İşaretlemenin, önbellekte kalmış ya da gecikmeli bir değeri değil render anındaki doğru bilgiyi yansıtması gerekiyor. Şablon düzeltme adımında yazdığımız boş ve eskimiş veri kuralları tam da bunun için. Bir alan yeterince hızlı güncellenemiyorsa, güncellemeler arasında eskiyecek bir özelliği yayınlamak yerine onu koşullu ya da kapsam dışı olarak işaretliyoruz.