Tek bir WordPress kurulumunu birden fazla dile açmak, ürün katalogunuzu ya da içeriğinizi yeni pazarlara taşımanın en hızlı yolu. Ancak işin görünmeyen tarafında URL yapısı, hreflang etiketleri ve veritabanı boyutu gibi kararlar var ki bunlar yanlış kurgulandığında hem arama motoru görünürlüğünü hem de site hızını ciddi şekilde zorluyor. Aşağıda kurulumu baştan sona, gerçek senaryolara dayanarak ele alıyoruz.
Çeviri Mimarisini Doğru Seçmek
İlk karar teknik değil, mimari. İki temel yaklaşım var: tek veritabanında dilleri yan yana tutan eklentiler (WPML, Polylang) ve her dil için ayrı WordPress kurulumu çalıştıran multisite yapısı. Çoğu durumda tek kurulumlu çözüm yönetimi kolaylaştırır; çünkü medya kütüphanesi, eklenti güncellemeleri ve tema tek bir yerden yönetilir.
- Tek site + eklenti: İçerik üreticisi az, dil sayısı 2-4 arasındaysa en pratik yol.
- Multisite ağı: Her ülke için farklı ürün, farklı yasal metin gerektiğinde mantıklı; ancak
wp-config.phpiçindeWP_ALLOW_MULTISITEveSUBDOMAIN_INSTALLayarlarıyla uğraşmayı göze almanız gerekir. - Headless / API: Frontend ayrı bir framework ile yazılıyorsa, WordPress yalnızca içerik deposu olarak kullanılır ve dil yönetimi API katmanına taşınır.
Karar verirken sadece bugünkü dil sayısına değil, önümüzdeki yıl içinde eklenmesi muhtemel dillere de bakın. Sonradan eklenti değiştirmek, çevrilmiş içeriğin yeni veri yapısına taşınmasını gerektirdiği için neredeyse her zaman sancılı bir göç sürecine dönüşür. Bu yüzden ilk seçimi geri dönülmez varsayıp ona göre planlamak en sağlıklısıdır.
Eklenti Karşılaştırması
Pratikte en çok tercih edilen üç çözümü temel kriterlerle karşılaştıralım. Seçim, bütçeden çok içerik hacmine ve teknik kontrol ihtiyacına göre yapılmalı.
| Özellik | WPML | Polylang | TranslatePress |
|---|---|---|---|
| Lisans | Ücretli | Ücretsiz + Pro | Ücretsiz + Pro |
| Çeviri yöntemi | Yazı bazlı | Yazı bazlı | Görsel / ön yüz |
| WooCommerce uyumu | Güçlü | Eklenti ile | Pro ile |
| Veritabanı etkisi | Yüksek | Orta | Düşük |
| String çevirisi | Kapsamlı | Sınırlı | Otomatik tarama |
WooCommerce ile çalışıyorsanız ve binlerce ürün çevrilecekse WPML genellikle daha az sürtünme yaratır. Buna karşılık küçük kurumsal sitelerde Polylang fazlasıyla yeterli olur. TranslatePress ise içeriği doğrudan ön yüzde, gördüğünüz yerde çevirme mantığıyla çalıştığı için kod bilgisi olmayan editörlerin işini kolaylaştırır; ancak sayfa sayısı arttıkça çeviri tablolarının şişmesi ve sorgu maliyeti göz önünde bulundurulmalıdır. Hangi eklentiyi seçerseniz seçin, otomatik makine çevirisi özelliğini ham haliyle yayınlamak yerine bir editör kontrolünden geçirmek, marka dilini korumak adına önemlidir.
URL Yapısı Kararı
Dilleri nasıl adresleyeceğiniz, SEO açısından en kritik tercihlerden biri. Üç seçenek mevcut ve her birinin farklı sonuçları var:
- Alt dizin:
site.com/en/— Tek domain otoritesini paylaşır, kurulumu en kolayıdır. - Alt alan adı:
en.site.com— DNS ve sertifika tarafında ek iş gerektirir, otorite kısmen ayrışır. - Ayrı domain:
site.de— Coğrafi hedefleme için güçlü ama yönetimi en pahalı seçenektir.
Çoğu proje için alt dizin yapısı en dengeli sonucu verir. Polylang'da bunu etkinleştirmek için kalıcı bağlantı ayarlarının /%postname%/ olarak ayarlı olması ve dil seçeneklerinde "Diller URL'lerde içeriğin dizin adı olarak gösterilsin" tercihinin işaretlenmesi yeterlidir.
hreflang ve Arama Motoru Sinyalleri
Birden fazla dilde aynı sayfanın varyantlarını yayınladığınızda, Google'a hangi sürümün hangi kitleye ait olduğunu hreflang etiketleriyle bildirmeniz gerekir. Çoğu çoklu dil eklentisi bunu otomatik üretir, ancak çıktıyı doğrulamadan canlıya almayın. Doğru üretilmiş bir blok genelde şöyle görünür:
<link rel="alternate" hreflang="tr" href="https://site.com/urun/" />
<link rel="alternate" hreflang="en" href="https://site.com/en/product/" />
<link rel="alternate" hreflang="de" href="https://site.com/de/produkt/" />
<link rel="alternate" hreflang="x-default" href="https://site.com/" />x-default satırını atlamamak önemli; bu, eşleşmeyen dillerdeki ziyaretçiler için varsayılan hedefi tanımlar. Etiketlerin karşılıklı (reciprocal) olması da şart, yani TR sayfası EN'i gösteriyorsa EN sayfası da TR'yi göstermelidir. Bu kurguyu sağlam bir altyapı üzerinde tutmak için SEO odaklı hosting altyapımız üzerinde sitemap ve hreflang çıktılarını periyodik olarak doğrulamanızı öneririz.
Tema ve String Çevirileri
İçerik çevirisi tek başına yetmez; tema ve eklentilerin sabit metinleri (buton yazıları, form etiketleri, hata mesajları) ayrı bir katmandır. Bu metinler .pot, .po ve .mo dosyalarıyla yönetilir ve genellikle wp-content/languages/ dizininde tutulur.
- Loco Translate: Yönetim panelinden doğrudan çeviri düzenlemeye olanak tanır, dil dosyalarını güvenli klasörde saklar.
- WPML String Translation: Tema dışı, koda gömülü metinleri tarayıp çevrilebilir hale getirir.
- load_textdomain: Özel temalarda
functions.phpiçindeload_theme_textdomain()çağrısının doğru çalıştığından emin olun.
Performans ve Veritabanı Yönetimi
Her dil, yazı tablolarına yeni kayıtlar ve wp_postmeta tarafında ek satırlar ekler. Üç dilli bir kurulumda veritabanı boyutu yaklaşık olarak iki ila üç katına çıkabilir. Bu yükü kontrol altında tutmak için nesne önbellekleme (Redis ya da Memcached) ve sayfa önbelleğinin dil bazında ayrıştırıldığından emin olmak gerekir. Ayrıca wp_options tablosunda biriken geçici (transient) kayıtların ve eklenti meta verilerinin düzenli temizlenmesi, sorgu sürelerini gözle görülür biçimde kısaltır. Çok dilli sitelerde arama (search) sorguları da ağırlaşma eğilimindedir; bu yüzden tam metin arama yükünü taşıyamayan paylaşımlı ortamlarda, harici bir arama servisi ya da indeks eklentisi devreye almak çoğu durumda daha akıcı bir deneyim sunar.
Bogahost Önerisi: Çoklu dil sitelerde önbelleğin diller arası karışmaması için cache anahtarına dil kodunu dahil edin; LiteSpeed Cache kullanıyorsanız "Drop Query String" listesine dil parametrelerini eklemeyin, aksi halde tüm diller aynı önbellekten servis edilir.
WP-CLI kullanıyorsanız, dil dosyalarını ve indeksleri komut satırından yönetmek hem hızlı hem güvenlidir:
wp language core install en_US de_DE wp language plugin update --all wp db optimizeYayın Öncesi Kontrol Listesi
Canlıya almadan önce birkaç noktayı mutlaka doğrulayın. Bunlar, sonradan düzeltilmesi en maliyetli olan kalemlerdir:
- Dil değiştirici: Menüde görünür ve doğru eşlenmiş sayfalara gidiyor.
- Sitemap: Her dilin URL'leri ayrı ayrı veya birleşik sitemap'te listeleniyor.
- 404 kontrolü: Çevrilmemiş sayfalar varsayılan dile yönlendiriliyor, boş sayfa üretmiyor.
- Yedek: Eklenti kurulumundan önce tam veritabanı yedeği alınmış.
Yüksek trafikli ve çok dilli projeleri sorunsuz taşımak isteyenler, kaynak izolasyonu sağlanmış WordPress hosting paketlerimiz ile bu süreci çok daha rahat yönetir.
Özetle
Çok dilli bir WordPress sitesi, doğru eklenti, sağlam bir URL stratejisi ve disiplinli önbellekleme ile gayet iyi ölçeklenir. Mimariyi baştan netleştirip hreflang ve performans tarafını ihmal etmediğinizde, tek kurulumla birden çok pazara hitap etmek hem yönetilebilir hem de sürdürülebilir bir yapıya dönüşür.
Reklam Alanı
İçerik Altı (728x90)
Yorumlar (0)
Henüz yorum yapılmamış. İlk yorumu siz yapın!
Yorum Yap