Google'a sayfanızın yerelleştirilmiş sürümleri hakkında bilgi verin
Bir sayfanızın farklı diller veya bölgeler için birden fazla sürümü varsa Google'a bu farklı varyasyonları bildirin. Bu şekilde Google Arama, kullanıcıları, sayfanızın dile veya bölgeye göre en uygun sürümüne yönlendirebilir.
Herhangi bir işlem yapmadığınızda bile Google'ın sayfanızın alternatif dil sürümlerini bulmaya devam edebileceğini, ancak dile veya bölgeye özel sayfalarınızı açıkça belirtmenizin genellikle en iyi yol olduğunu unutmayın.
Alternatif sayfaları belirtmenin önerildiği bazı örnek senaryolar:
- Ana içeriği tek bir dilde sağlıyor ve sadece şablonu çeviriyorsanız (örneğin, gezinme ve alt bilgi). Kullanıcı tarafından oluşturulmuş içerikler barındıran sayfalar (örneğin, forumlar) tipik olarak bu şekilde çalışır.
- İçeriğinizde, tek bir dilde benzer içeriğe sahip küçük bölgesel varyasyonlar varsa. Örneğin, ABD, İngiltere ve İrlanda'yı hedefleyen İngilizce dilinde içerikleriniz olabilir.
- Sitenizin içeriği tamamıyla birden çok dile çevrilmişse. Örneğin, her sayfanın hem Almanca hem de İngilizce sürümleri vardır.
Bir sayfanın yerelleştirilmiş sürümleri, yalnızca sayfanın ana içeriği çevrilmeden kalırsa kopya olarak kabul edilir.
Alternatif sayfalarınızı belirtme yöntemleri
Bir sayfanın birden çok dil/yerel ayar sürümünü Google’a bildirmenin üç yolu vardır:
Üç yöntem de Google açısından aynı olduğu için sitenize en uygun yöntemi seçebilirsiniz. Üç yöntemi de aynı anda kullanabilirsiniz, ancak bu durum size Arama'da herhangi bir fayda sağlamaz (hatta tek bir yöntem seçmek yerine üçünü birden yönetmek çok daha zor olabilir).
hreflang
kullanarak Google'a içeriğinizin varyasyonları hakkında bilgi verdiğinizde bu
sayfaların aynı içeriğin yerelleştirilmiş varyasyonları olduğunu anlayabiliriz. Google bir sayfanın
dilini algılamak için hreflang
veya HTML lang
özelliğini kullanmaz.
Bunun yerine dili belirlemek için algoritmalar kullanırız.
Tüm yöntemler için kurallar
- Her dil sürümü, diğer tüm dil sürümlerinin yanı sıra kendisini de listelemelidir.
- Alternatif URL'ler, aktarım yöntemi (http/https) dahil olmak üzere tam nitelikli olmalıdır. Örneğin:
https://example.com/foo
olmalı,//example.com/foo
veya/foo
olmamalıdır - Alternatif URL’lerin aynı alanda olmaları gerekmez.
-
Dilleri aynı ancak yerel ayarları farklı olan kullanıcılara yönelik birden fazla alternatif URL'ye sahipseniz söz konusu dilin coğrafi konumları belli olmayan kullanıcıları için kapsayıcı bir URL'ye yer vermek de iyi bir fikirdir. Örneğin, İrlanda (
en-ie
), Kanada (en-ca
) ve Avustralya'daki (en-au
) İngilizce konuşanlar için belirli URL'leriniz varsa ABD, Birleşik Krallık ve İngilizce konuşulan diğer tüm ülkelerdeki arama yapan kullanıcılar için genel bir İngilizce (en
) sayfa da sağlayın. Seçim yaparsanız bu sayfa, belirli sayfalardan biri olabilir. - Her iki sayfa birbirini işaret etmiyorsa etiketler yoksayılır. Bunun nedeni, başka bir sitedeki bir kişinin rastgele bir şekilde sayfalarınızdan birinin alternatif sürümü olarak kendini adlandıran bir etiket oluşturamamasıdır.
- Her dil için iki yönlü bağlantılardan oluşan eksiksiz bir grup sağlamak zorlaşırsa bazı sayfalardan bazı dilleri çıkartabilirsiniz; Google, birbirini işaret eden sayfaları işlemeye devam eder. Bununla birlikte, yeni genişletilmiş dil sayfalarının iki yönlü olarak kaynak/yaygın dillere bağlanması önemlidir. Örneğin, siteniz esasen
.fr
uzantılı URL'lerle Fransızca dilinde oluşturulmuşsa yeni oluşturduğunuz Meksika (.mx
) ve İspanyol (.es
) sürümü sayfaların güçlü.fr
varlığınıza iki yönlü olarak bağlanması, İspanyolcaya ait yeni sayfa varyantlarınızın (.mx
ve.es
) birbirine iki yönlü olarak bağlanmasından daha önemlidir. - Eşleştirilmemiş diller, özellikle de dil/ülke seçiciler veya otomatik olarak yönlendirilen ana sayfalar için bir yedek sayfa ekleme seçeneğini değerlendirin.
x-default
değerini kullanın:
<link rel="alternate" href="https://example.com/" hreflang="x-default" />
HTML etiketleri
Google'a bir sayfanın tüm dil ve bölge varyantlarını bildirmek için sayfa üst bilginize <link rel="alternate" hreflang="lang_code"... >
öğeleri ekleyin. Bu yöntem, bir site haritanız yoksa veya siteniz için HTTP yanıt başlıklarını belirtemiyorsanız yararlı olur.
Sayfanın her varyasyonunda hem <head>
öğesine bir <link>
öğe grubu hem de kendisi dahil olmak üzere her sayfa varyantı için bir bağlantı ekleyin. Bağlantı grubu, sayfanın her sürümü için aynıdır.
Ek kurallara bakın.
Burada her link
öğesinin söz dizimini görebilirsiniz:
<link rel="alternate" hreflang="lang_code" href="url_of_page" />
Söz dizimi | |
---|---|
lang_code |
Sayfanın bu sürümü tarafından hedeflenen desteklenen bir dil/bölge kodu veya sayfada bir hreflang etiketi ile açıkça listelenmeyen herhangi bir dille eşleşmesi için x-default . |
url_of_page |
Belirtilen dil/bölge için bu sayfanın sürümüne ait tam nitelikli URL. |
<link>
etiketleri, düzgün oluşturulmuş bir <head>
bölümü içinde bulunmalıdır. Şüpheye düşerseniz bağlantıların <head>
öğesinin içinde yer aldığından emin olmak için, oluşturduğunuz sayfadaki kodu HTML doğrulayıcıya yapıştırın. Ayrıca, belgenin alternatif gösterimleri için link
etiketlerini birleştirmeyin. Örneğin media
gibi diğer özelliklere sahip hreflang
ek açıklamalarını tek bir <link>
etiketinde birleştirmeyin.
Örnek
Örnek olarak verilen Widgets, Inc. kuruluşunun ABD, İngiltere ve Almanya'daki kullanıcılara hizmet veren bir web sitesi vardır. Aşağıdaki URL'ler önemli ölçüde benzer içerikler barındırır, sadece bölgesel varyantları vardır:
Bölgesel varyantları olan URL'ler | |
---|---|
https://en.example.com/page.html |
ABD’den başka ülkelere nakliye ücretleriyle ilgili bilgileri içeren İngilizce dilindeki genel ana sayfa. |
https://en-gb.example.com/page.html |
Fiyatları İngiliz sterlini cinsinden gösteren Birleşik Krallık ana sayfası. |
https://en-us.example.com/page.html |
Fiyatları ABD doları cinsinden gösteren ABD ana sayfası. |
https://de.example.com/page.html |
Almanca ana sayfa. |
https://www.example.com/ |
Varsayılan sayfa herhangi bir dili veya yerel ayarı hedeflemez. İçerisinde, kullanıcıların kendi dillerini ve bölgelerini ayarlayabileceği seçiciler bulunur. |
Google'ın, bu URL’lerdeki dile özel alt alan adlarını (en
, en-gb
, en-us
, de
) sayfanın hedef kitlesini belirlerken kullanmadığını, hedef kitleyi açıkça eşlemeniz gerektiğini unutmayın.
Bölgesel varyantları olan URL'ler tablosunda listelenen tüm sayfaların <head>
bölümünde olabilecek HTML'yi aşağıda görebilirsiniz. ABD ve Birleşik Krallık'taki genel İngilizce konuşan kullanıcılar ile Almanca konuşan kullanıcıları yerelleştirilmiş sayfalara, diğer tüm kullanıcıları genel bir ana sayfaya yönlendirir. Google Arama, tarayıcı ayarlarına göre kullanıcı için uygun sonucu döndürür.
<head> <title>Widgets, Inc</title> <link rel="alternate" hreflang="en-gb" href="https://en-gb.example.com/page.html" /> <link rel="alternate" hreflang="en-us" href="https://en-us.example.com/page.html" /> <link rel="alternate" hreflang="en" href="https://en.example.com/page.html" /> <link rel="alternate" hreflang="de" href="https://de.example.com/page.html" /> <link rel="alternate" hreflang="x-default" href="https://www.example.com/" /> </head>
HTTP Üstbilgileri
Bir sayfanın tüm dil ve bölge varyantlarını Google'a bildirmek için sayfanızın GET yanıtıyla bir HTTP üst bilgisi döndürebilirsiniz. Bu, HTML olmayan dosyalar (ör. PDF'ler) için kullanışlı olur.
Üst bilginin biçimini şu şekildedir:
Link: <url1>; rel="alternate"; hreflang="lang_code_1", <url2>; rel="alternate"; hreflang="lang_code_2", ...
Söz dizimi | |
---|---|
<url_x> |
İlişkili hreflang özelliğine atanan yerel ayar dizesine karşılık gelen alternatif sayfanın tam nitelikli URL'si. URL'nin başında ve sonunda < ile > işaretleri bulunmalıdır. Örnek: <https://www.google.com> |
lang_code_x |
Sayfanın bu sürümü tarafından hedeflenen desteklenen bir dil/bölge kodu veya sayfada bir hreflang etiketi ile açıkça listelenmeyen herhangi bir dille eşleşmesi için x-default . |
İstenen sürüm dahil olmak üzere sayfanın her sürümü için bir <url>
, rel="alternate"
ve hreflang
değer grubunu, aşağıdaki örnekte gösterildiği gibi virgülle ayırarak belirtmeniz gerekir. Bir sayfanın her sürümü için döndürülen Link:
üst bilgisi aynıdır. Ek kurallara bakın.
Örnek
Biri İngilizce konuşan, biri İsviçre'de olup Almanca konuşan ve biri de Almanca konuşan diğer tüm kullanıcılar için olmak üzere bir PDF dosyasının üç sürümüne sahip bir site tarafından döndürülen Link:
üst bilgisi örneğini aşağıda görebilirsiniz:
Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="en", <https://de-ch.example.com/file.pdf>; rel="alternate"; hreflang="de-ch", <https://de.example.com/file.pdf>; rel="alternate"; hreflang="de"
Site haritası
Google’a her URL’nin tüm dil ve bölge varyantlarını bildirmek için XML
site haritası kullanabilirsiniz. Bunu yapmak için sayfanın kendisi dahil olmak üzere her dil/yerel ayar varyantını listeleyen alt <xhtml:link>
girişlerine sahip, tek bir URL belirten <loc>
öğesi ekleyin. Dolayısıyla, bir sayfanızın 3 sürümü
varsa site haritanızda her sürümün URL'siyle ilgili girişler bulunur ve her bir girişin 3 aynı alt girişi olur.
Site haritası kuralları:
-
xhtml ad alanını aşağıdaki gibi belirtin:
xmlns:xhtml="http://www.w3.org/1999/xhtml"
-
Diğer site haritalarında olduğu gibi, her URL için ayrı bir
<url>
öğesi oluşturun. - Her
<url>
öğesi, sayfa URL'sini belirten bir<loc>
alt öğesi içermelidir. -
Her
<url>
öğesinin, sayfanın kendisi de dahil olmak üzere tüm alternatif sürümlerini listeleyen bir<xhtml:link rel="alternate" hreflang="supported_language-code">
alt öğesi olmalıdır. Bu<xhtml:link>
alt öğelerinin sırası önemli değildir, ancak hataları kontrol etmenizi kolaylaştırmak için bunları aynı sırada tutabilirsiniz. Alt öğeler, site haritalarının URL sınırına dahil edilmez. - Site haritasını, sitenizde site haritasının geçerli olduğu bir dizine yükleyin. Site haritasının yalnızca site haritasının barındırıldığı dizinin alt URL'lerini içerebileceğini unutmayın.
- Site haritalarıyla ilgili dokümanlarımız site haritası uzantıları için de geçerlidir. Genel site haritası yönergelerine uyduğunuzdan emin olun.
- Ek kurallara bakın.
Örnek
Burada, dünya genelinde İngilizce konuşan kullanıcıları hedefleyen bir İngilizce sayfayı, bu sayfanın dünya genelinde Almanca konuşan ve İsviçre'de olup Almanca konuşan kullanıcıları hedefleyen eşdeğer sürümlerini görebilirsiniz. Sitenizde bulunan tüm URL'ler şunlardır:
www.example.com/english/page.html
, İngilizce konuşan kullanıcıları hedefler.www.example.de/deutsch/page.html
, Almanca konuşan kullanıcıları hedefler.www.example.de/schweiz-deutsch/page.html
, İsviçre'deki Almanca konuşan kullanıcıları hedefler.
Burada, bu üç sayfanın site haritasını görebilirsiniz:
<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"> <url> <loc>https://www.example.com/english/page.html</loc> <xhtml:link rel="alternate" hreflang="de" href="https://www.example.de/deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="de-ch" href="https://www.example.de/schweiz-deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/english/page.html"/> </url> <url> <loc>https://www.example.de/deutsch/page.html</loc> <xhtml:link rel="alternate" hreflang="de" href="https://www.example.de/deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="de-ch" href="https://www.example.de/schweiz-deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/english/page.html"/> </url> <url> <loc>https://www.example.de/schweiz-deutsch/page.html</loc> <xhtml:link rel="alternate" hreflang="de" href="https://www.example.de/deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="de-ch" href="https://www.example.de/schweiz-deutsch/page.html"/> <xhtml:link rel="alternate" hreflang="en" href="https://www.example.com/english/page.html"/> </url> </urlset>
Desteklenen dil ve bölge kodları
hreflang
özelliğinin değeri, bir veya isteğe bağlı olarak iki değerden (kısa çizgiyle ayrılmış) oluşur. Örneğin, en-US
. hreflang
özelliğinin ilk kodu alternatif URL için dil kodudur
(ISO 639-1 biçiminde). Ardından isteğe bağlı olarak bölge kodunu gösteren ikinci bir kod (ISO 3166-1 Alpha 2 biçiminde) gelir.
Belçika'da farklı dil konuşan kullanıcıları hedeflemek için aşağıdaki dil ve bölge kodlarını kullanabilirsiniz:
- İyi (Belçika'da Almanca konuşan kullanıcılar için):
de-be
- İyi (Belçika'daki Felemenkçe konuşan kullanıcılar için):
nl-be
- İyi (Belçika'daki Fransızca konuşan kullanıcılar için):
fr-be
- Kötü: Çünkü ilk kod dil kodudur (
be
, Belarusça dil kodunu ifade eder):be
Etiketleme işleminizi basit hale getirmek için kendi başına bir dil kodu belirtebilirsiniz. Örneğin:
de
: Almanca içerik, bölgeden bağımsızen-GB
: İngiltere'deki kullanıcılar için İngilizce içerikde-ES
: İspanya'daki kullanıcılar için Almanca içerik
Alfabe varyasyonları için doğru alfabe, ülke bilgisinden türetilir. Örneğin, Tayvan'daki kullanıcılar için zh-TW
kullanıldığında alfabe otomatik olarak türetilir (bu örnekte: Çince-Geleneksel). ISO 15924 kullanarak da alfabenin kendisini açıkça belirtebilirsiniz. Örneğin:
zh-Hant
: Çince (Geleneksel)zh-Hans
: Çince (Basitleştirilmiş)
Diğer dil kodlarında olduğu gibi isteğe bağlı olarak bir bölge de belirtebilirsiniz. Örneğin, ABD'deki kullanıcılar için Çinceyi (Basitleştirilmiş) belirtmek amacıyla zh-Hans-US
kodunu kullanın.
Eşleşmeyen diller için x-default
değerini kullanma
Kullanıcının tarayıcı ayarlarıyla başka bir dil/bölge eşleşmediğinde ayrılmış x-default
değeri kullanılır. Bu değer, sitenizin yerelleştirilmiş sürümlerinden hiçbiriyle eşleşmeyen dil ayarlarına sahip
kullanıcılar söz konusu olduğunda yedek sayfayı belirtmek için önerilir. x-default
değeri, herhangi
bir sayfada kullanılabilse de aslında dil seçme sayfaları için tasarlandığından en iyi sonucu
bu sayfalarda verir.
x-default
değeri için dil kodu belirtilmesine gerek yoktur. Sayfa, dil ayarları sitenizin diliyle eşleşmeyen kullanıcıları hedeflediğinden sayfanın dili alakasızdır.
hreflang="x-default"
ek açıklamasını uygulamak için mevcut hreflang
ek açıklamalarına fazladan bir link
etiketi ekleyin ve siteniz bu dili desteklemiyorsa href
özelliğini, kullanıcılarınızın erişmesini istediğiniz URL'yek ayarlayın. Örneğin, bir HTML kullanımı aşağıdaki gibi görünebilir:
<link rel="alternate" href="https://example.com/en-gb" hreflang="en-gb" /> <link rel="alternate" href="https://example.com/en-us" hreflang="en-us" /> <link rel="alternate" href="https://example.com/en-au" hreflang="en-au" /> <link rel="alternate" href="https://example.com/country-selector" hreflang="x-default" />
Sorun giderme
Sık Yapılan Yanlışlar
hreflang
etiketinin kullanımıyla ilgili en yaygın hatalar şunlardır:
-
Eksik dönüş bağlantıları: X sayfası Y sayfasına bağlanıyorsa Y sayfası tekrar X sayfasına bağlanmalıdır.
hreflang
ek açıklamasını kullanan tüm sayfalarda bu kurala uyulmazsa ilgili ek açıklamalar yoksayılabilir veya doğru şekilde yorumlanmayabilir. Örneğin,https://de.example.com/index.html
adresindeki şu bağlantıyı ele alalım: Ayrıca<link rel="alternate" hreflang="en-gb" href="https://en-gb.example.com/index.html" />
https://en-gb.example.com/index.html
adresinde içeriğinde
sürümüne yönlendiren birhreflang
bağlantınızın olması gerekir:<link rel="alternate" hreflang="de" href="https://de.example.com/index.html" />
- Yanlış dil kodları: Kullandığınız tüm dil kodlarının alternatif bir URL'nin dilini (ISO 639-1 biçiminde) ve isteğe bağlı olarak bölgesini (ISO 3166-1 Alpha 2 biçiminde) tanımladığından emin olun. Sadece bölgeyi tanımlamak geçerli değildir.
hreflang
hatalarını ayıklama
hreflang
ek açıklamalarının hatalarını ayıklamak için kullanabileceğiniz birçok üçüncü taraf aracı vardır. Birkaç popüler araç aşağıda verilmiştir. Bu araçlar Google tarafından sağlanmaz veya kontrol edilmez.
-
hreflang
etiketlerini oluşturmak veya değiştirmek için Aleyda Solis'inhreflang
etiketi oluşturma aracı. - Yayındaki tek bir sayfada bulunan
hreflang
etiketlerini doğrulamak için Merkle SEOhreflang
etiketi test aracı.