"Google artık JavaScript'i anlıyor" cümlesi teknik olarak doğru ama pratikte yanıltıcı. Anlamak ile zamanında anlamak arasında, indekslenme açısından günler süren bir fark var.
İki aşamalı indeksleme
Googlebot bir sayfayı iki turda işler:
- Tarama: Ham HTML alınır. İçindeki linkler keşfedilir, metin ayrıştırılır.
- Render: Sayfa render kuyruğuna alınır. Kaynak müsait olduğunda headless Chromium'da çalıştırılır ve JavaScript sonrası HTML elde edilir.
İki aşama arasındaki süre saatlerden haftalara kadar değişir ve tamamen sitenizin algılanan önemine bağlıdır. Haber sitesi için dakikalar, yeni bir kurumsal site için haftalar olabilir.
Hangi mimari ne zaman?
| Yaklaşım | Uygun olduğu durum | SEO riski |
|---|---|---|
| Statik üretim (SSG) | Blog, dokümantasyon, pazarlama sayfaları | Çok düşük |
| Sunucu tarafı render (SSR) | E-ticaret, sık değişen listeler | Düşük |
| İstemci tarafı render (CSR) | Giriş gerektiren panel arayüzleri | Yüksek — indekslenmesi gereken sayfalarda kullanmayın |
En sık karşılaşılan dört hata
1. Linklerin buton olarak yazılması
<div onclick="navigate()"> bir link değildir. Googlebot tıklamaz. Gezinilebilir her şey gerçek bir <a href> olmalıdır.
2. Kaydırmayla yüklenen içerik
Sonsuz kaydırma ile yüklenen ürünler Googlebot için görünmez, çünkü bot sayfayı kaydırmaz. Sayfalama linkleriyle desteklenmiş bir alternatif her zaman gerekir.
3. Robots.txt ile engellenen JS ve CSS
Render için gereken kaynakları engellemek, Google'ın sayfayı yarım görmesine yol açar. /assets/ veya /static/ dizinlerini engelleyen eski kuralları temizleyin.
4. Meta etiketlerin JavaScript ile yazılması
Başlık ve canonical etiketleri istemci tarafında değiştiriliyorsa, ilk taramada yanlış değer okunur. Bunlar sunucudan gelmelidir.
Doğrulama alışkanlığı
Her yeni şablon yayına çıkmadan önce iki kontrol yapın: sayfayı JavaScript kapalı olarak açın ve Search Console canlı testinde oluşturulan HTML'e bakın. Bu iki dakikalık kontrol, aylarca indekslenmeyen bir bölümü fark etmenizi sağlar.