Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Structured Data Nedir? Schema.org, JSON-LD ve Google'ın Bununla Gerçekte Ne Yaptığı
Structured data, sayfanın ne anlattığını schema.org vocabulary'si ve JSON-LD gibi bir syntax ile makineye açıkça söylemektir; Google bunu sayfayı anlamak ve rich result uygunluğu için kullanır, ama markup ne rich result'ı garanti eder ne de sıralama faktörü olarak sunulur. Aynı bilgiyi Microdata, RDFa ve JSON-LD ile yazıp karşılaştırıyor, Bookstore sayfasının entity graph'ını .NET 10 ile döküyor ve Google dışındaki tüketicilere bakıyoruz.
JSON-LD Sözdizimi ve Güvenli Üretim: @context, @type, @id, @graph ve ASP.NET Core / Angular SSR'da Doğru Kodlama
JSON-LD'yi güvenli üretmenin kuralı, metni JSON'un kendi \u003C escape'iyle yazmak ve sayfaya tek bir @graph olarak koymaktır; UnsafeRelaxedJsonEscaping ile Html.Raw bir başlıktaki </script> yüzünden sayfayı bölüp XSS'e kapı açar. @context, @type, @id ve @graph'ı, ASP.NET Core 10'da typed record'larla üretimi, .NET 9 ile gelen ScriptTagHelper ayrıntısını ve Angular 22 SSR'da çift script ile sessiz veri bozulmasını gerçek çıktılarla inceliyoruz.
BlogPosting, BreadcrumbList ve Yazar Entity'si: Person, ProfilePage, Organization ve WebSite ile Entity Graph Kurmak
Bir teknik blog'un structured data'sı, sitede tek bir @id ile tanımlanan Person, Organization ve WebSite'a bağlanan bir BlogPosting ile dil başına doğru URL'li bir BreadcrumbList'ten oluşur. Google'ın Article, Breadcrumb ve ProfilePage önerilerini, dateModified'ı dürüst kullanmayı ve Schema Markup Validator'da graph'ın nasıl çözüldüğünü .NET 10 ile gösteriyor, mertozen.com'un canlı çıktısını denetliyoruz.
Diğer Tipler ve Kaldırılan Rich Result'lar: VideoObject, SoftwareApplication, Speakable, FAQ ve HowTo'nun Hikâyesi
VideoObject yalnızca tek videoya odaklanan bir watch page'te video özelliklerine aday olur, SoftwareApplication puan veya yorum olmadan rich result üretmez, speakable ise hâlâ İngilizce ve haber odaklı bir beta. HowTo'dan FAQ'ya 2023–2026 arasında kaldırılan rich result'ların tarihlerini Google'ın değişiklik günlüğünden çıkarıyor, kaldırılan markup'ı silmenin gerekip gerekmediğini ve mertozen.com'daki karşılıklarını .NET 10 örnekleriyle tartışıyoruz.
Structured Data'yı Test Etmek ve İzlemek: Rich Results Test, Schema Markup Validator, Search Console ve CI'da Otomatik Kontrol
Rich Results Test Google'ın rich result uygunluğunu, Schema Markup Validator schema.org geçerliliğini kontrol eder; regresyonu ise ancak her build'de çalışan testler yakalar. URL Inspection ve Search Console raporlarını, xUnit ve WebApplicationFactory ile JSON-LD testlerini, Angular SSR için Playwright kontrollerini ve deploy sonrası smoke test'leri gerçek başarılı ve başarısız çıktılarla gösteriyoruz.