Hreflang Nedir?
Kısa tanım
Hreflang, bir sayfanın farklı dil veya bölgeler için hazırlanmış sürümlerini arama motorlarına bildiren bir HTML özelliğidir. rel=alternate bağlantı etiketiyle, HTTP başlığıyla ya da XML site haritasıyla eklenir. Google bu bilgiyi kullanıcının diline ve konumuna en uygun URL'yi sonuçlarda göstermek için kullanır. Etiketlerin karşılıklı olması gerekir; eşleşmeyen diller için x-default değeri tanımlanabilir.
Diğer adları: hreflang etiketi, rel=alternate hreflang, hreflang özelliği

Hangi sorunu çözer?
Bir sitenin Türkçe ve İngilizce sürümleri olduğunu düşünün. İki sayfa aynı konuyu anlatır ama farklı okurlara hitap eder. Hreflang, arama motoruna “bu sayfanın İngilizcesi şu adreste, Türkçesi şu adreste” der. Böylece Google, Türkçe arama yapan kullanıcıya Türkçe sayfayı, İngilizce arayan kullanıcıya İngilizce sayfayı göstermeye çalışır.
Hreflang bir sıralama güçlendiricisi değildir; sayfanın sıralamasını yükseltmez, sıralanan sayfa yerine doğru dildeki eşdeğerini gösterir. Aynı dilde ama farklı ülkelere yönelik, birbirine çok benzeyen sayfalarda da (örneğin Almanya ve Avusturya için iki Almanca sayfa) hangisinin kime gösterileceğini netleştirir.
Dil ve bölge kodları
Değer, ISO 639-1 biçiminde bir dil kodu ve isteğe bağlı olarak ISO 3166-1 Alpha-2 biçiminde bir bölge kodundan oluşur:
tr: Türkçe konuşan tüm kullanıcılaren-GB: Birleşik Krallık'taki İngilizce konuşan kullanıcılarde-AT: Avusturya'daki Almanca konuşan kullanıcılar
Yalnızca bölge kodu kullanılamaz; hreflang="tr" geçerlidir ama tek başına “Türkiye” anlamına gelen bir kod yoktur. Google'ın belgelerine göre bu iki standart dışındaki kodlar (örneğin es-419) desteklenmez. Sık yapılan bir hata da Birleşik Krallık için en-UK yazmaktır; doğru kod en-GB'dir.
Örnek kurulum
Türkçe ve İngilizce ana sayfası olan bir sitede her iki sayfanın da head bölümüne aynı set eklenir:
<link rel="alternate" hreflang="tr" href="https://www.ornek.com/" />
<link rel="alternate" hreflang="en" href="https://www.ornek.com/en/" />
<link rel="alternate" hreflang="x-default" href="https://www.ornek.com/" />Aynı bilgi HTML olmayan dosyalar için HTTP başlığıyla, çok sayıda sayfa varsa XML site haritasındaki xhtml:link öğeleriyle de verilebilir. Üç yöntem eşdeğerdir; önemli olan birini seçip tutarlı uygulamaktır.
Karşılıklılık ve x-default
Hreflang'in en çok atlanan kuralı karşılıklılıktır. Her dil sürümü hem kendisini hem de diğer tüm sürümleri listelemelidir. Türkçe sayfa İngilizceyi gösterip İngilizce sayfa Türkçeyi göstermiyorsa Google bu eşleşmeyi yok sayar. Bu kural, başka bir sitenin kendini sizin sayfanızın alternatifi ilan etmesini engellemek için vardır.
x-default ise listedeki hiçbir dile uymayan kullanıcılar için yedek adrestir. Genellikle dil seçim sayfası ya da kullanıcıyı diline göre yönlendiren ana sayfa için kullanılır. Zorunlu değildir ama dil seçicisi olan sitelerde önerilir.
Sık görülen hatalar
- Hreflang'de yönlendirilen, 404 dönen veya noindex taşıyan adresleri göstermek.
- Dil sürümlerini birbirine canonical'lamak. Her sürümün canonical URL'si kendisi olmalı; hreflang yalnızca canonical adresler arasında kurulmalıdır.
- Göreli adres yazmak; hreflang'deki URL'ler protokol ve alan adıyla birlikte tam olmalıdır.
- Etiketleri yalnızca ana sayfaya eklemek; ilişki sayfa bazındadır, her eşleşen sayfa çifti için tanımlanmalıdır.
- Çevirisi olmayan sayfayı başka dildeki alakasız bir sayfayla eşleştirmek. Karşılığı yoksa o sayfa için hreflang eklenmez.
Kontrol ve kaynak
Search Console'daki eski Uluslararası Hedefleme raporu kullanımdan kaldırıldığı için hreflang hatalarını bulmanın en pratik yolu siteyi bir tarayıcı araçla taramak ve her sayfanın dönüş bağlantısını kontrol etmektir. Biçim ve kurallar için Google'ın yerelleştirilmiş sürümler belgesi esas alınmalıdır. Hreflang, çok dilli sitelerde kopya içerik endişesini de büyük ölçüde ortadan kaldırır; çünkü çeviriler zaten kopya sayılmaz, benzer bölgesel sürümler ise birbirinin alternatifi olarak tanınır.

