Çok dilli web sitesi nasıl kurulur? Adres yapısı ve hreflang
Çok dilli bir web sitesi kurmak için dört kararı sırayla vermek gerekir: hangi sayfaların hangi dilde olacağı ve metnin çevrilip çevrilmeyeceği ya da uyarlanacağı, her dilin hangi adres yapısında duracağı, dil sürümlerinin hreflang etiketleriyle birbirine nasıl bağlanacağı, içeriğin zaman içinde nasıl güncel tutulacağı. Google, her dil için ayrı adres kullanılmasını ve ziyaretçinin dile göre otomatik yönlendirilmemesini öneriyor.
Bu yazıda bu dört kararı, kendi sitemizin Türkçe ve İngilizce yapısını da örnek vererek anlatıyoruz.
Çok dilli site ile çeviri eklentisi arasındaki fark ne?
Çok dilli site, her dil sürümünün kendi adresi, kendi metni ve kendi başlıkları olan bir yapıdır. Sayfayı ziyaretçinin tarayıcısında anlık çeviren bir araç ise arama motoruna ayrı bir sayfa sunmaz. O dilde arama yapan biri, sitenizi o dilde bulamaz.
Google bu konuda iki şey söylüyor. Birincisi, her dil sürümü için ayrı bir adres kullanılmalı; dili çerezle ya da tarayıcı ayarıyla değiştirmek önerilmiyor. İkincisi, yalnızca menü ve alt bilgi gibi kalıp metinleri çevirip ana içeriği tek dilde bırakmak kötü bir kullanıcı deneyimi yaratabiliyor. Kaynak: Google’ın çok bölgeli ve çok dilli siteler belgesi.
Çeviri mi, uyarlama mı?
Çeviri, metni bir dilden diğerine aktarmaktır. Uyarlama ise metni o dili konuşan okurun bağlamına göre yeniden yazmaktır. Çoğu kurumsal site için doğru cevap uyarlamadır.
Farkı bir örnekle anlatalım. Türkçe bir sayfada “KVKK’ya uygun formlar” yazıyorsa, İngilizce okur için bu kısaltma bir şey ifade etmez. Uyarlamada KVKK’nın Türkiye’nin kişisel verileri koruma kanunu olduğu bir cümleyle açıklanır. Ya da bir hizmet sayfasındaki “iki iş günü içinde dönüyoruz” cümlesi aynen kalabilir, ama yerel bir tatile yapılan gönderme çıkarılır.
| Çeviri | Uyarlama | |
|---|---|---|
| Ne yapılır | Metin olduğu gibi aktarılır | Metin okurun bağlamına göre yeniden yazılır |
| Kısaltmalar ve yerel kurumlar | Aynen kalır | Açıklanır ya da karşılığı verilir |
| Örnekler | Aynı örnekler kullanılır | Gerekirse okura tanıdık örnekler seçilir |
| Ton | Kaynak dilin tonu korunur | Hedef dilin yazım alışkanlığına uyulur |
| Uygun olduğu yer | Yasal metinler, teknik belgeler | Tanıtım, hizmet ve blog sayfaları |
Yasal metinler bir istisnadır. Aydınlatma metni ya da kullanım koşulları gibi belgelerde anlam kayması istenmez. Bunların çevirisi bir hukukçunun gözünden geçmelidir.
Makine çevirisi bir ilk taslak olarak işe yarayabilir. Ama yayımlanan metni o dili iyi bilen birinin okuması gerekir. Yanlış bir terim ya da garip bir cümle, sitenin geri kalanına duyulan güveni de zedeler.
Biz kendi sitemizde İngilizce yazıları Türkçe yazıların uyarlaması olarak yazıyoruz. Her İngilizce yazı Türkçe çiftine bağlı. Türkiye’ye özgü bir düzenleme geçiyorsa İngilizce okur için bağlamıyla açıklanıyor. İngiliz İngilizcesini esas alıyoruz.
Hangi adres yapısı seçilmeli?
Her dil sürümünün nerede duracağı, işin en baştan verilmesi gereken kararıdır. Sonradan değiştirmek bir site taşıma işine dönüşür. Google’ın belgesinde dört seçenek var.
| Yapı | Örnek | Artısı | Dikkat edilecek nokta |
|---|---|---|---|
| Ülke alan adı | ornek.de | Hedef ülke açık | Her ülke için ayrı alan adı, ayrı kayıt kuralları, daha fazla bakım |
| Alt alan adı | en.ornek.com | Kurulumu kolay, farklı sunucularda durabilir | Ziyaretçi adresten hedefi anlamayabilir |
| Alt klasör | ornek.com/en/ | Kurulumu ve bakımı kolay, tek alan adı | Tüm diller aynı sunucuda durur |
| Adres parametresi | ornek.com?dil=en | Yok denecek kadar az | Google önermiyor |
Çoğu işletme sitesi için alt klasör en sade seçenektir. Tek bir alan adı, tek bir barındırma, tek bir Search Console mülkü. Ülke alan adları ise ayrı ülkelerde ayrı ekiplerle ve ayrı içerikle çalışan şirketler için anlamlıdır. Alan adı uzantılarının kayıt kurallarını alan adı, hosting ve kurumsal e-posta yazımızda anlattık.
Bizim sitemizde Türkçe kökte, İngilizce /en/ klasörü altında duruyor. Adresler de dile göre değişiyor: Türkçe /yazilar/ İngilizcede /en/journal/ oluyor. Adresin kendisinin de okurun dilinde olması, paylaşılan bir bağlantının neyle ilgili olduğunu baştan söylüyor.
hreflang nedir, nasıl kurulur?
hreflang, bir sayfanın diğer dillerdeki karşılıklarını arama motoruna bildiren etikettir. Google bu bilgiyi, arayan kişiye kendi dilindeki sürümü göstermek için kullanır.
Google’ın yerelleştirilmiş sürümler belgesine göre kurulumda dikkat edilecek kurallar şunlar:
- Üç yoldan biri seçilir. Etiketler sayfanın HTML başlığına, HTTP yanıt başlığına ya da site haritasına yazılabilir. Google üçünü eşdeğer sayar; birini kullanmak yeterlidir.
- Her sürüm kendini ve diğerlerini listeler. Türkçe sayfa hem kendini hem İngilizce karşılığını göstermelidir. İngilizce sayfa da aynısını yapmalıdır.
- İlişki iki yönlü olmalıdır. İki sayfa birbirini göstermiyorsa Google etiketleri yok sayar.
- Adresler tam yazılır.
https://ile başlayan eksiksiz adresler kullanılır. - Dil kodları doğru biçimde yazılır. Dil kodu ISO 639-1 biçiminde (
tr,en) olur. İsteğe bağlı bir bölge kodu eklenebilir (en-GB). Bölge kodu tek başına kullanılamaz. - Eşleşmeyen diller için
x-defaulteklenir. Ziyaretçinin dili hiçbir sürümle eşleşmezse gösterilecek sayfa budur.
Google’ın aynı belgede yaptığı iki not da önemli. Google bir sayfanın dilini hreflang’den ya da HTML’deki dil özelliğinden değil, kendi algoritmalarıyla belirler. Yerelleştirilmiş sayfalar ise yalnızca ana içerik çevrilmeden bırakıldığında kopya sayılır.
Bizim yapımızda her sayfa kendi dilini ve varsa karşı dildeki çiftini gösteriyor. x-default Türkçe sürüme işaret ediyor. Bir Türkçe yazının İngilizce uyarlaması yoksa o sayfa İngilizce bir karşılık iddia etmiyor. Bu sonuncusu küçük bir ayrıntı gibi görünür. Ama karşılığı olmayan bir sayfayı diğer dilin ana sayfasına bağlamak, hreflang’in verdiği bilgiyi yanlış kılar.
Dil seçici nasıl tasarlanmalı?
Google, ziyaretçiyi tahmin edilen diline göre otomatik olarak başka bir dil sürümüne yönlendirmemeyi öneriyor. IP adresine göre içerik değiştirmek de önerilmiyor. Bunun yerine sayfadan diğer dil sürümlerine bağlantı verilmesi isteniyor.
İyi bir dil seçici için şunlara dikkat etmenizi öneririz:
- Görünür bir yerde durur. Genellikle üst menüde ya da alt bilgide, her sayfada aynı yerde.
- Dil adlarını kendi dilinde yazar. “Türkçe” ve “English”. Bizim bakışımız bayraktan kaçınmak yönünde, çünkü aynı dil birçok ülkede konuşulur.
- Aynı sayfanın karşılığına götürür. İngilizce bir yazıdayken “Türkçe”ye tıklayan kişi, ana sayfaya değil, o yazının Türkçe çiftine gitmelidir.
- Karşılık yoksa dürüst davranır. Sayfanın o dilde sürümü yoksa seçici o dilin ana sayfasına gider, ziyaretçi de bunu bilir.
- Klavyeyle ve ekran okuyucuyla kullanılabilir. Bağlantıların dili kodda doğru tanımlanır.
İçerik zaman içinde nasıl güncel tutulur?
Çok dilli sitenin asıl zorluğu kurulumdan sonra başlar. Türkçe sayfada bir fiyat politikası, bir adres ya da bir hizmet değiştiğinde İngilizce sayfa eski bilgiyle kalabilir. Ziyaretçi iki dilde iki farklı bilgi görür.
Bunu önlemek için şu düzeni öneriyoruz:
- Bir ana dil belirleyin. Değişiklikler önce ana dilde yapılır, sonra diğerlerine taşınır.
- Sayfa çiftlerini bir listede tutun. Hangi sayfanın hangi dilde karşılığı var, son ne zaman güncellendi?
- Değişikliği çiftiyle birlikte kapatın. Bir sayfa değiştiğinde, karşılığı da güncellenmeden iş bitmiş sayılmaz.
- Her dili ayrı ölçün. Search Console’da dil klasörlerine göre performansa bakın. Bir dil sürümü hiç trafik almıyorsa ya içerik eksiktir ya da o dilde arama yapan kitle beklenenden küçüktür.
- Tüm sayfaları çevirmek zorunda değilsiniz. Bazı içerikler yalnız bir dilde anlamlıdır. Önemli olan, çevrilen sayfaların eksiksiz ve güncel olmasıdır.
Bizim sitemizde de her sayfanın İngilizce karşılığı yok. Kültür arşivimizin İngilizce liste sayfaları var, ama ayrıntı sayfaları yalnız Türkçe. İngilizce listelerden bu sayfalara verilen bağlantılar, hedefin Türkçe olduğunu kodda da bildiriyor. Bazı Türkçe yazılarımızın da henüz İngilizce uyarlaması yok.
Çok dilli sitede sık yapılan hatalar
- Tüm dilleri tek bir adreste tutup dili çerezle değiştirmek
- Ziyaretçiyi tarayıcı diline göre zorla yönlendirmek
- hreflang’i yalnız bir yönde kurmak
- Karşılığı olmayan sayfaları diğer dilin ana sayfasına bağlamak
- Menüyü çevirip içeriği bırakmak
- Sayfa başlıklarını ve açıklamalarını çevirmeyi unutmak
- Görsellerdeki yazıları ve alternatif metinleri ana dilde bırakmak
- Bir dili yayına alıp güncellemeyi bırakmak
Bu hataların çoğu yayından sonra fark edilir. Teknik tarafın diğer kalemlerini teknik SEO kontrol listesi yazımızda topladık. Mevcut bir siteye yeni bir dil ekliyor ya da adres yapısını değiştiriyorsanız, web sitesi yenilerken SEO yazımızdaki yönlendirme adımları da geçerlidir.
Sık sorulan sorular
Çok dilli sitede her sayfanın çevrilmesi gerekir mi?
Gerekmez. Bazı sayfalar yalnız bir dildeki okur için anlamlıdır. Önemli olan, bir dilde yayımlanan sayfaların o dilde eksiksiz olması ve karşılığı olmayan sayfaların karşılığı varmış gibi gösterilmemesidir.
hreflang sıralamayı yükseltir mi?
Google hreflang bilgisini, arayan kişiye kendi dilindeki sürümü göstermek için kullanır. Doğru kurulduğunda, İngilizce arama yapan birinin Türkçe sayfanıza düşmesini ve tersini önler.
Makine çevirisiyle çok dilli site kurulabilir mi?
Teknik olarak kurulabilir. Ama yayımlanan her metni o dili iyi bilen birinin okumasını öneriyoruz. Makine çevirisi terimleri ve tonu çoğu zaman tutturamaz; yasal metinlerde ise anlam kayması risk yaratır.
Alt klasör mü, alt alan adı mı daha iyi?
Çoğu işletme sitesi için alt klasör daha sade ve bakımı daha kolay bir seçenektir. Tek alan adı, tek barındırma ve tek bir Search Console mülkü ile çalışılır. Farklı ülkelerde ayrı ekipler ve ayrı içeriklerle çalışılıyorsa alt alan adı ya da ülke alan adı daha uygun olabilir.
Çok dilli bir siteyi baştan doğru kurmak isterseniz web tasarım sürecimize göz atabilirsiniz. Yayından sonra dil sürümlerinin izlenmesi için SEO ve bakım hizmetimize bakabilirsiniz. Projenizi anlatmak için teklif formunu kullanabilirsiniz; en geç iki iş günü içinde dönüyoruz.