ULUSLARARASI SEO

Hreflang nedir, nasıl kullanılır?

İçindekiler 8 başlık
  1. Hreflang etiketi nasıl çalışır?
  2. Hreflang nasıl kullanılır?
  3. Hreflang SEO için neden önemlidir?
  4. Hreflang değeri hangi dil ve bölge kodlarıyla yazılır?
  5. Hreflang x-default ne zaman kullanılır?
  6. Hreflang ile canonical arasındaki fark nedir?
  7. Hreflang kullanımında en sık hangi hatalar yapılır?
  8. Hreflang kontrolü nasıl yapılır?

Hreflang bir sayfanın başka dil ya da bölge sürümlerini arama motorlarına bildiren bir bağlantı özniteliğidir. Hreflang etiketi adıyla da anılır. Google bu bildirimi kullanarak arama yapan kişiye diline ya da bölgesine uygun sürümü gösterir. Hreflang üç yöntemle uygulanır: sayfanın head bölümü, sunucunun yanıt başlığı ya da site haritası. Sürümler birbirini karşılıklı göstermezse Google etiketleri yok sayar.

Hreflang etiketi nasıl çalışır?

Hreflang etiketi aynı içeriğin yerelleştirilmiş sürümlerini bir küme halinde birbirine bağlayarak çalışır. Kümedeki her sayfa bütün sürümlerin adresini, her adresin hedeflediği dil ile bölgeyi listeler. Google listeyi okuyunca sayfaların aynı içeriğin sürümleri olduğunu anlar. Arama sonucunda kullanıcının diline ya da bölgesine en uygun sürümü gösterir.

Bir hreflang etiketi HTML (hiper metin işaretleme dili) kodunda link öğesi olarak yazılır. Öğe üç parça taşır: rel="alternate" ifadesi, hreflang değeri, sürümün adresini veren href.

<link rel="alternate" hreflang="de" href="https://example.com/de/" />

Örnekteki satır sayfanın Almanca sürümünün adresini bildirir. Google sayfanın dilini hreflang değerinden okumaz. Google'ın yerelleştirilmiş sürümler belgesi dil tespitinde hreflang ya da lang özniteliğinin kullanılmadığını, dili algoritmaların belirlediğini söyler. Hreflang yalnız sürümler arasındaki ilişkiyi kurar.

Sürümler arasındaki bağ karşılıklı olmak zorundadır. Türkçe sayfanın etiketi Almanca sayfayı gösteriyorsa Almanca sayfanın etiketi de Türkçe sayfayı göstermelidir. Google bu kuralın nedenini de açıklar: başka bir sitedeki biri kendi sayfasını sizin sayfanızın alternatif sürümü diye işaretleyememelidir.

Hreflang nasıl kullanılır?

Hreflang üç yöntemden biriyle kullanılır: sayfanın head bölümüne eklenen link öğeleri, sunucunun yanıt başlığı ya da site haritası. Google üç yöntemi eşdeğer sayar. Üçünü birlikte kullanmak aramada ek fayda getirmez, yönetimi zorlaştırır. Kurulum hangi yöntem seçilirse seçilsin aynı altı adımı izler:

  1. Sürümleri eşleştirin. Her sayfanın diğer dil ya da bölgedeki karşılığını bir tabloda yan yana yazın.
  2. Kodları belirleyin. Her sürüm için dil kodunu, gerekiyorsa bölge kodunu seçin.
  3. Yöntemi seçin. Sitenizin altyapısında en kolay yönetilen tek yöntemi kullanın.
  4. Tam listeyi her sürüme ekleyin. Her sürüm kendisi dahil bütün sürümleri listeler. Adresler protokolü de içeren URL (sayfanın tam adresi) biçiminde yazılır: https://example.com/de/ doğru, /de/ yanlıştır.
  5. Yedek sayfayı tanımlayın. Hiçbir sürümle eşleşmeyen kullanıcılar için x-default satırı ekleyin.
  6. Canonical etiketini kontrol edin. Her sürümün canonical etiketi kendi dilindeki sayfayı göstermelidir.

Hreflang HTML head bölümüne nasıl eklenir?

Hreflang head bölümüne her sürüm için bir link öğesi yazılarak eklenir. Link öğeleri kümesi sayfanın bütün sürümlerinde aynıdır. Türkçe, Almanca, Avusturya'ya özel Almanca sürümü olan bir ürün sayfasının head bölümü şöyle görünür:

<head>
  <link rel="alternate" hreflang="tr" href="https://example.com/tr/urun/" />
  <link rel="alternate" hreflang="de" href="https://example.com/de/produkt/" />
  <link rel="alternate" hreflang="de-AT" href="https://example.com/de-at/produkt/" />
  <link rel="alternate" hreflang="x-default" href="https://example.com/" />
</head>

Google link öğelerinin düzgün kurulmuş bir head bölümünde durmasını ister. Hreflang ile media gibi başka bir öznitelik aynı link öğesinde birleştirilmez. Google bu yöntemi site haritası olmayan ya da yanıt başlığını değiştiremeyen siteler için kullanışlı bulur.

Hreflang HTTP başlığıyla nasıl verilir?

Hreflang HTTP (hiper metin aktarım protokolü) başlığıyla, sunucunun dosya yanıtına eklediği bir Link başlığı içinde verilir. Yöntem PDF (taşınabilir belge biçimi) gibi HTML olmayan dosyalarda işe yarar. Üç sürümü olan bir PDF dosyasının yanıt başlığı şöyledir:

Link: <https://example.com/kilavuz.pdf>; rel="alternate"; hreflang="en",
      <https://example.com/de/kilavuz.pdf>; rel="alternate"; hreflang="de",
      <https://example.com/de-ch/kilavuz.pdf>; rel="alternate"; hreflang="de-CH"

Sunucu aynı Link başlığını dosyanın her sürümü için döndürür. Başlık istenen sürümün kendi adresini de içerir.

Hreflang XML site haritasına nasıl yazılır?

Hreflang XML (genişletilebilir işaretleme dili) site haritasına her adresin altına eklenen xhtml:link satırlarıyla yazılır. Her sürüm ayrı bir url öğesi olur, altında kendisi dahil bütün sürümler sayılır. Dosyanın urlset öğesinde xhtml ad alanı tanımlanır. İki sürümlü bir sayfanın kaydı şöyledir:

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://example.com/tr/urun/</loc>
    <xhtml:link rel="alternate" hreflang="tr" href="https://example.com/tr/urun/"/>
    <xhtml:link rel="alternate" hreflang="de" href="https://example.com/de/produkt/"/>
  </url>
  <url>
    <loc>https://example.com/de/produkt/</loc>
    <xhtml:link rel="alternate" hreflang="tr" href="https://example.com/tr/urun/"/>
    <xhtml:link rel="alternate" hreflang="de" href="https://example.com/de/produkt/"/>
  </url>
</urlset>

Alt satırlar site haritasının URL sınırına sayılmaz. Dosyanın genel kurallarını XML site haritası oluşturma adımlarını anlattığımız yazıda bulabilirsiniz.

Hreflang SEO için neden önemlidir?

Hreflang arama motoru optimizasyonu (SEO) için önemlidir, çünkü Google'a hangi sürümün hangi dildeki ya da bölgedeki kullanıcıya ait olduğunu açıkça bildirir. Google hiçbir işlem yapılmasa da alternatif dil sürümlerini bulabilir. Yine de dile ya da bölgeye özel sayfaların açıkça belirtilmesini önerir.

Google bir sayfanın hedef kitlesini belirlerken şu sinyallere bakar: ülke kodlu alan adı, hreflang bildirimi, sunucu konumu, yerel adres ya da para birimi gibi diğer işaretler. Google'ın çok bölgeli siteler belgesi Googlebot'un taramayı çoğunlukla ABD'den yaptığını da belirtir. Googlebot farklı konumları deneyerek sayfanın olası sürümlerini aramaz. Sürümleri Google'a sitenin kendisi bildirmelidir.

Google hreflang kullanımını üç durumda önerir:

  • Ana içerik tek dilde kalır, yalnız menü ile alt bilgi çevrilir. Forum gibi kullanıcı içeriği taşıyan siteler bu gruptadır.
  • İçerik aynı dildedir, bölgeye göre küçük farklar taşır. ABD, Birleşik Krallık, İrlanda için hazırlanan İngilizce sayfalar bu gruptadır.
  • İçeriğin tamamı birden fazla dile çevrilmiştir. Her sayfasının Türkçe ile Almanca sürümü olan siteler bu gruptadır.

Google yerelleştirilmiş sürümleri yalnız ana içerik çevrilmeden kaldığında kopya sayar. Ülke alan adı, alt alan adı ile alt klasör seçeneklerinin kıyasını çok dilli sitelerde SEO stratejisini anlattığımız yazıda bulabilirsiniz.

Hreflang değeri hangi dil ve bölge kodlarıyla yazılır?

Hreflang değeri ISO 639-1 biçimindeki bir dil koduyla yazılır, ardına isteğe bağlı olarak ISO 3166-1 Alpha 2 biçiminde bir bölge kodu eklenir. ISO (Uluslararası Standardizasyon Örgütü) listelerindeki bu kodlar iki harflidir. İki kod kısa çizgiyle ayrılır. Değer üç biçimde yazılabilir:

  • Yalnız dil kodu. Bölgeden bağımsız Almanca içerik de değerini alır.
  • Dil ile bölge kodu. Birleşik Krallık'taki kullanıcılara yönelik İngilizce içerik en-GB değerini alır.
  • Ayrılmış x-default değeri. Hiçbir sürümle eşleşmeyen kullanıcılara sunulan yedek sayfa x-default değerini alır.

Google yalnız bu iki standartta listelenen kodları destekler. Standartlarda bulunmayan es-419 gibi kodlar çalışmaz. Bölge kodu tek başına yazılamaz. Belçika'yı hedeflemek için yazılan be değeri Belarusça dil kodu olarak okunur. Hreflang değeri büyük küçük harfe duyarlı değildir. Bölge kodunu büyük harfle yazmak ISO 3166-1 Alpha 2 geleneğine uyar.

Dil kodunun bölgenin resmi diliyle aynı olması gerekmez. İspanya'daki kullanıcılara yönelik Almanca içerik de-ES değerini alır. Aynı dilde birden fazla bölge sürümü olan sitelere Google bölgesiz genel bir sayfa da önerir. İrlanda, Kanada, Avustralya için ayrı İngilizce sayfaları olan bir site diğer İngilizce konuşan kullanıcılara en değerli sayfayı sunar.

Birden fazla yazı sistemi olan dillerde yazı sistemi bölge kodundan türetilir. Tayvan için yazılan zh-TW değeri geleneksel Çinceyi gösterir. Yazı sistemi ISO 15924 koduyla açıkça da yazılabilir: zh-Hant geleneksel, zh-Hans basitleştirilmiş Çincedir.

Hreflang x-default ne zaman kullanılır?

Hreflang x-default değeri kullanıcının tarayıcı dil ayarı sitedeki hiçbir sürümle eşleşmediğinde gösterilecek yedek sayfayı tanımlamak için kullanılır. Google bu değeri dil ya da ülke seçim sayfaları için tasarladığını belirtir. Otomatik yönlendirme yapan ana sayfalar da yedek sayfa olarak işaretlenebilir. Yedek satıra dil kodu yazılmaz, çünkü sayfa dili eşleşmeyen kullanıcılara yöneliktir.

Yedek satır mevcut hreflang satırlarının yanına eklenir:

<link rel="alternate" hreflang="en-GB" href="https://example.com/en-gb/" />
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/" />
<link rel="alternate" hreflang="en-AU" href="https://example.com/en-au/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/ulke-secimi/" />

Örnekte dil ayarı üç sürümden hiçbiriyle eşleşmeyen kullanıcı arama sonucunda ülke seçim sayfasını görür.

Hreflang ile canonical arasındaki fark nedir?

Hreflang ile canonical arasındaki fark amaçtadır: hreflang aynı içeriğin dil ya da bölge sürümlerini birbirine bağlar, canonical kopya adresler arasından asıl adresi bildirir. İki etiket birbirinin yerine geçmez, aynı sayfada birlikte bulunur. Tablo iki etiketi altı özellikte karşılaştırır.

ÖzellikHreflangCanonical
AmacıAynı içeriğin dil ya da bölge sürümlerini birbirine bağlarKopya ya da çok benzer adresler arasından asıl adresi bildirir
Yazımırel="alternate" hreflang="de"rel="canonical"
Sayfadaki satır sayısıSayfanın kendisi dahil her sürüm için bir satırTek satır
KarşılıklılıkZorunludur, dönüş etiketi olmayan eşleşme yok sayılırAranmaz, kopya sayfa asıl sayfayı tek yönlü gösterir
Uygulama yeriHead bölümü, HTTP başlığı ya da site haritasıHead bölümü ya da HTTP başlığı, site haritası daha zayıf sinyaldir
Arama sonucuna etkisiKullanıcının diline ya da bölgesine uygun sürüm gösterilirKopyaların sinyalleri tek adreste birleşir

İki etiket aynı sayfada çelişmemelidir. Google'ın standart URL belirtme belgesi hreflang kullanan sitelerde standart sayfanın aynı dilde seçilmesini ister. Almanca sürümün canonical etiketi Türkçe sayfayı gösterirse site Google'a Almanca sayfanın kopya olduğunu söylemiş olur. Aynı belgeye göre Google standart URL seçerken karşılıklı hreflang kümesinde yer alan adresleri tercih eder. Asıl adresin nasıl seçildiğini canonical tag kullanım kurallarını anlattığımız yazıda bulabilirsiniz.

Hreflang kullanımında en sık hangi hatalar yapılır?

Hreflang kullanımında en sık yapılan hatalar eksik dönüş etiketi, yanlış dil kodu ile yanlış bölge kodudur. Google'ın belgesi bu üç hatayı en yaygın hatalar olarak sayar. Aşağıdaki liste bu üç hataya uygulama kurallarından doğan dört hatayı ekler:

  • Dönüş etiketi eksik. Türkçe sayfa Almanca sürümü gösterir, Almanca sayfa Türkçe sürümü göstermez. Google bu eşleşmeyi yok sayabilir ya da yanlış yorumlayabilir.
  • Dil kodu yanlış. Kod ISO 639-1 listesinde yoktur ya da bölge kodu dil kodu olmadan yazılmıştır.
  • Bölge kodu yanlış. Birleşik Krallık için GB yerine UK yazılmıştır. Google başka amaçla ayrılmış EU, UN, UK kodlarını dikkate almaz.
  • Canonical ile çelişki var. Bir dil sürümünün canonical etiketi başka dildeki sayfayı gösterir.
  • Sayfa kendini listelemiyor. Sayfa diğer sürümleri sayar, kendi adresini listeye eklemez.
  • Adres göreli yazılmış. Satırda /de/produkt/ gibi bir yol vardır. Google protokolü de içeren tam adres ister.
  • Adres HTTP sürümünü gösteriyor. Site HTTPS kullanır, hreflang satırları http:// ile başlayan adresleri gösterir.

Çok dilli sitelerin teknik denetiminde ilk baktığımız iki nokta dönüş etiketleri ile canonical uyumudur. Bulguları öncelik sıralı iş listesi olarak yazılım ekibine veriyoruz.

Hreflang kontrolü nasıl yapılır?

Hreflang kontrolü bir hreflang checker aracıyla ya da sürümlerin kaynak kodunu elle karşılaştırarak yapılır. Search Console'daki Uluslararası Hedefleme raporu kullanımdan kaldırıldı. Search Console yardım sayfası Google'ın hreflang etiketlerini desteklemeyi sürdürdüğünü belirtir. Google hata ayıklama için üçüncü taraf araçları anar, bu araçları kendisinin yönetmediğini de not eder. Google'ın belgesinde iki araç geçer: Aleyda Solis'in hreflang etiket üreticisi ile Merkle'ın hreflang test aracı.

Elle kontrol beş adımda yapılır:

  1. Bir sayfanın her sürümünde hreflang satırlarını bulun: head bölümünde, yanıt başlığında ya da site haritasında.
  2. Satır kümesinin bütün sürümlerde aynı olduğunu karşılaştırın.
  3. Her adresin https:// ile başlayan tam adres olduğuna bakın.
  4. Dil ile bölge kodlarını ISO 639-1 ile ISO 3166-1 Alpha 2 listelerinde arayın.
  5. Her sürümün canonical etiketinin kendi dilindeki sayfayı gösterdiğini doğrulayın.

Search Console'daki URL denetleme aracı Google'ın bir sayfa için seçtiği standart URL'yi gösterir. Almanca sayfada Türkçe adres görünüyorsa Google iki sayfayı kopya saymıştır. Performans raporunda ülke filtresi seçilip Sayfalar sekmesine bakılınca o ülkeden gelen tıklamaların hangi sürüme gittiği görülür. Raporların kullanımını Search Console raporlarını okuma rehberimizde anlattık.

Hreflang kurulumu çok ülkeli bir sitede pazar seçimi ile site yapısı kararlarından sonra gelir. Bu kararların nasıl verildiğini uluslararası SEO danışmanlığı sayfamızda anlattık.

SSS

Sık sorulan sorular

Tek dilli bir sitede hreflang gerekir mi?

Gerekmez. Hreflang bir sayfanın birden fazla dil ya da bölge sürümü olduğunda kullanılır. Tek dilde, tek ülkeye yayın yapan bir sitede bildirilecek alternatif sürüm yoktur. Yalnız Türkçe yayın yapan rankzup.com da bu yüzden hreflang kullanmaz.

Hreflang farklı alan adları arasında çalışır mı?

Çalışır. Google alternatif adreslerin aynı alan adında olmasını şart koşmaz. Türkçe sürümü example.com, Almanca sürümü example.de üzerinde duran bir site iki sayfayı birbirine bağlayabilir. Karşılıklı işaretleme kuralı alan adları farklı olduğunda da geçerlidir.

Hreflang ile HTML lang özniteliği aynı şey midir?

Aynı şey değildir. Lang özniteliği sayfanın kendi dilini bildirir, hreflang ise sayfanın diğer sürümlerinin adresini bildirir. Google sayfanın dilini belirlerken ikisini de kullanmaz, sayfanın görünür içeriğine bakar.

Hreflang satırlarında bütün dil sürümlerini listelemek zorunlu mudur?

Google her sürümün bütün sürümleri listelemesini ister. Eksiksiz karşılıklı küme kurmak zorlaşırsa bazı sayfalarda bazı diller atlanabilir. Google birbirini karşılıklı gösteren sayfaları işlemeyi sürdürür. Yeni eklenen dil sayfalarını öncelikle sitenin en güçlü dil sürümüne karşılıklı bağlamak gerekir.

Hreflang yerine kullanıcının konumuna göre otomatik yönlendirme yapılabilir mi?

Google otomatik yönlendirmeyi önermez. Kullanıcının dilini tahmin ederek yapılan yönlendirme kullanıcıların da arama motorlarının da sitenin bütün sürümlerini görmesini engelleyebilir. Google her dil sürümü için ayrı adres kullanmayı, sayfalara diğer dil sürümlerine giden bağlantılar eklemeyi önerir.

WhatsApp
Telefon