---
title: "Gerçek Zamanlı Kenar JSON-LD Enjeksiyonu için Çok Dilli Yapılandırılmış Veri"
---

# Gerçek Zamanlı Kenar JSON-LD Enjeksiyonu için Çok Dilli Yapılandırılmış Veri

Arama motorları, sayfa bağlamını anlamak için yapılandırılmış veriye giderek daha fazla güveniyor ve bu verinin teslim hızı doğrudan sıralama potansiyelini etkileyebiliyor. Onlarca dil varyasyonu sunan küresel web siteleri için, yapı zamanında statik JSON‑LD bloklarını gömmek gecikme, yinelenme ve yüksek bakım maliyeti yaratıyor. JSON‑LD üretimini ve doğrulamasını kenara taşıyarak **anlık, dile duyarlı şema**yı tarayıcılara ve kullanıcılara aynı anda sunabilir, böylece bir sayfanın her varyasyonu en doğru mikro‑veriyi sunar ve performanstan ödün vermez.

## Kenar‑Barındırmalı Yapılandırılmış Veri Neden Önemli?

Bir ziyaretçinin tarayıcısından köken sunucuya yapılan istekte her milisaniye önemlidir. **İçerik Dağıtım Ağları (CDN)** kenarda konumlandığında HTTP yanıtlarını yakalayabilir ve istemciye ulaşmadan önce değiştirebilir. Bu yetenek şunları mümkün kılar:

* Algılanan bölgeye göre JSON‑LD bloklarını ekleme veya değiştirme.  
* Şemayı gerçek zamanlı olarak en yeni [Schema.org] tanımlarıyla doğrulama.  
* **Yapay Zeka (AI)** modelleriyle yerel iş saatleri, para birimi veya kültürel açıdan ilgili anahtar kelimeler gibi bağlamsal özelliklerle varlıkları zenginleştirme.

Sonuç, hem insanlar hem de otomatik tarayıcılar için **sıfır gecikmeli** bir deneyim olur; bu da sayfa‑yükleme metriklerini—bilinen bir sıralama faktörünü—iyileştirir ve eski ya da hatalı yapılandırılmış verinin sunulma riskini azaltır.

## Gerçek Zamanlı Kenar Enjeksiyon Boru Hattının Temel Bileşenleri

Boru hattı üç mantıksal aşamadan oluşur: algılama, üretim ve doğrulama.

### Bölge (Locale) Algılama

Kenar’da, istek başlığı `Accept-Language` incelenir ve çok dilli eşleme tablosuna hızlı bir bakışla hedef dil kodu (ör. `en`, `fr`, `de`) belirlenir. Başlık yoksa, varsayılan site dili devreye girer.

### JSON‑LD Üretimi

JavaScript ya da Rust ile yazılmış hafif bir sunucusuz fonksiyon, temel içerik modelini bir anahtar‑değer depodan alır. Fonksiyon, `name`, `description` ve `offers.priceCurrency` gibi dil‑özel alanları **JSON‑LD** şablonuna birleştirir. AI‑destekli zenginleştirme için, anlamsal uygunluğu artıran eşanlamlılar veya yerel deyimler üretmek üzere kompakt bir **Büyük Dil Modeli (LLM)** çağrılabilir.

### Gerçek Zamanlı Doğrulama

Yanıt kenardan ayrılmadan önce, oluşturulan JSON‑LD mevcut [Schema.org] sürümüne başvuran bir JSON‑Şema doğrulayıcısından geçer. Hata oluşursa, daha önce doğrulanmış güvenli bir şema geri dönülür; bu sayede arama motorları hiçbir zaman bozuk işaretleme ile karşılaşmaz.

## Cloudflare Workers ile Kenar JSON‑LD (Örnek)

Aşağıda bir Cloudflare Worker’ın bölge algılamasını, JSON‑LD üretimini ve doğrulamasını nasıl yapabileceğine dair kısa bir örnek yer alıyor. Kod, doğrulama için `jsonschema` kütüphanesini ve bağlamsal zenginleştirme için küçük bir LLM çıkarım uç noktasını kullanıyor.

```javascript
addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const url = new URL(request.url)
  const lang = request.headers.get('Accept-Language')?.split(',')[0] || 'en'
  const baseContent = await KV.get(`content:${url.pathname}`, { type: 'json' })
  const localized = await enrichWithLLM(baseContent, lang)

  const schema = await fetch('https://schema.org/version/latest/schema.json').then(r => r.json())
  const validator = new jsonschema.Validator()
  const result = validator.validate(localized.jsonld, schema)

  let jsonldBlock = result.errors.length ? baseContent.fallbackJsonld : localized.jsonld
  const response = await fetch(request)
  let html = await response.text()
  html = html.replace('</head>', `<script type="application/ld+json">\n${JSON.stringify(jsonldBlock, null, 2)}\n</script></head>`)
  return new Response(html, response)
}

async function enrichWithLLM(content, lang) {
  const llmResponse = await fetch('https://llm.example.com/enrich', {
    method: 'POST',
    body: JSON.stringify({ content, lang })
  }).then(r => r.json())
  return llmResponse
}
```

Bu betik bir **durumsuz** kenar fonksiyonunu göstermektedir:

1. Kullanıcının dil tercihini okur.  
2. KV depodan temel içerik modelini alır.  
3. Dil‑özel zenginleştirme için bir LLM çağırır.  
4. Ortaya çıkan JSON‑LD'yi canlı şemaya karşı doğrular.  
5. Doğrulanmış bloğu, istemciye dönmeden önce HTML yanıtına ekler.

## Çok Dilli SEO İçin Sağlanan Avantajlar

### Daha Hızlı Tarama ve İndeksleme

Arama motoru botları, sayfa performansını ölçmek için sık sık kenar düğümlerini tarar. URL’nin tam diliyle eşleşen bir şema sunmak, düzeltme işaretlemesini keşfetmek için yeniden tarama ihtiyacını azaltır; bu da büyük çok dilli siteler