Ana içeriğe geç

Giriş

🎯 Bu modül ne yapar?

Locales modülü, OneEntry projenizde çok dilli desteği yönetmenizi sağlar - mevcut dilleri alır, kullanıcı yerelini tespit eder ve birden fazla dilde içerik sunan uluslararası uygulamalar oluşturur.

Bunu dil yöneticiniz olarak düşünün - uygulamanızda dilleri sabit kodlamak yerine, OneEntry'den aktif diller listesini dinamik olarak alırsınız, böylece içeriğiniz farklı yerellere (İngilizce, Rusça, Arapça, İspanyolca vb.) otomatik olarak uyum sağlar.


📖 Basit Açıklama

Modern uygulamalarda, genellikle birden fazla dili desteklemeniz gerekir:

  • 🌍 E-ticaret siteleri - Farklı ülkelerdeki müşterilere hizmet verin (İngilizce, Fransızca, Almanca)
  • 📱 Mobil uygulamalar - Kullanıcının cihaz diline göre UI'yi uyarlayın
  • 🌐 Web siteleri - Ziyaretçinin tercih ettiği dilde içerik gösterin
  • 📚 Dokümantasyon - Birden fazla dilde yardım sağlayın
  • 🎮 Oyunlar - Arayüzü ve içeriği çevirin

Dilleri sabit kodlamanın sorunları:

Sorunlar:

  • 🔄 Güncellemesi zor - Yeni diller eklemek için yeniden dağıtım gerekir
  • 🌍 Senkronize değil - Uygulama dilleri CMS dillerinden farklı olabilir
  • Çeviri uyumsuzlukları - İçerik CMS'de mevcut ama uygulamada yok
  • 🔧 Manuel bakım - Diller değiştiğinde her seferinde kodu güncelleyin

Locales çözümü:

Faydalar:

  • 🔄 Her zaman senkronize - Diller OneEntry'de yapılandırılanlarla eşleşir
  • 🌍 Dinamik - Kod değişikliği olmadan dilleri ekleyin/çıkarın
  • Doğrulanmış - Sadece içeriği olan dilleri gösterin
  • 🎯 Merkezi - Dilleri tek bir yerden yönetin

✨ Temel Kavramlar

Yerel Nedir?

Yerel, içeriğin nasıl görüntüleneceğini belirleyen bir dil ve bölge kombinasyonudur:

  • Dil Kodu - ISO 639-1 dil kodu (örneğin, en, ru, ar)
  • Bölge Kodu - ISO 3166-1 ülke kodu (örneğin, US, GB, RU)
  • Yerel Tanımlayıcı - Birleşik format: dil_BÖLGE (örneğin, en_US, ru_RU, ar_SA)

Örnekler:

Yerel KoduDilBölgeAçıklama
en_USİngilizceAmerika Birleşik DevletleriAmerikan İngilizcesi
en_GBİngilizceBüyük BritanyaBritanya İngilizcesi
ru_RURusçaRusyaRusça
es_ESİspanyolcaİspanyaAvrupa İspanyolcası
es_MXİspanyolcaMeksikaMeksika İspanyolcası
ar_SAArapçaSuudi ArabistanArapça (Suudi Arabistan)
fr_FRFransızcaFransaFransızca
de_DEAlmancaAlmanyaAlmanca

Yerel Yapısı

OneEntry'deki her yerel şunları içerir:

{
id: 146, // benzersiz ID
shortCode: 'en', // kısa kod
code: 'en_US', // tam kod
name: 'English (USA)', // ad
nativeName: 'English (USA)', // yerel ad
isActive: true, // aktif mi
image: null, // resim
position: 1, // pozisyon
}

Neden Locales Modülünü Kullanmalıyım?

FaydasıAçıklama
Çok dilli destekİçeriği kullanıcının tercih ettiği dilde sunun
Dinamik Dil ListesiDiller OneEntry yapılandırmasıyla senkronize
Varsayılan Yerel TespitiVarsayılan dili otomatik olarak belirleyin
Aktif Yerel FiltrelemeSadece etkin dilleri gösterin
Merkezi YönetimDilleri yönetim panelinde güncelleyin, kodda değil
Kullanıcı DeneyimiKullanıcıların dillerini seçmelerine izin verin

Yaygın Kullanım Durumları

Kullanım DurumuAçıklamaÖrnek
Dil SeçiciDilleri değiştirmek için açılır menüDil bayrakları ile web sitesi başlığı
İçerik YerelleştirmeKullanıcının dilinde içerik alınİngilizce veya Rusça blog yazıları
YönlendirmeHer dil için URL yapısı/en/about, /ru/about
Yedekleme MantığıÇeviri eksikse varsayılan dili gösterinİspanyolca yoksa İngilizce gösterin
Kullanıcı TercihleriKullanıcının dil seçimini hatırlayınYereli çerezlerde/localStorage'da saklayın

📋 Bilmeniz Gerekenler

Yereller Yönetim Panelinde Yapılandırılır

Yerelleri SDK aracılığıyla oluşturamazsınız - OneEntry yönetim panelinde yapılandırılır:

OneEntry Yönetim Paneli → Ayarlar → Diller → Dil Ekle → Yerel Seç

SDK, yerel bilgilerini almak için kullanılır, yerel oluşturmak için değil.

Aktif ve Pasif Yereller

Tüm yapılandırılan yereller aktif olmayabilir:

DurumAnlamıNe Zaman Kullanılır
Aktif (isActive: true)Yerel etkin ve içeriği varDil seçicide gösterin
Pasif (isActive: false)Yerel devre dışı veya hazırlanıyorKullanıcılardan gizleyin

En iyi uygulama: Dil seçicileri oluştururken her zaman isActive ile filtreleyin.

Varsayılan Yerel

Her OneEntry projesinin bir varsayılan yereli vardır:

  • Varsayılan yerel (isDefault: true) - Birincil dil
  • Hiçbir yerel belirtilmediğinde kullanılır
  • Çeviri eksik olduğunda yedek olarak kullanılır

Yerel Kodu ve Kısa Kod

Her yerelin iki kod formatı vardır:

AlanFormatÖrnekKullanım Amacı
codedil_BÖLGEen_US, ru_RUTam yerel tanımlaması
shortCodedilen, ruSadece dil tanımlaması

📊 Hızlı Referans Tablosu

YöntemAçıklamaKullanım Durumu
getLocales()Tüm yerelleri al (aktif ve pasif)Mevcut dilleri alın

❓ Sıkça Sorulan Sorular (SSS)

Projeme yeni diller nasıl eklerim?

Yerelleri SDK aracılığıyla ekleyemezsiniz. Yereller, OneEntry Yönetim panelinde yapılandırılır.


Varsayılan dili nasıl ayarlarım?

Varsayılan yereli SDK aracılığıyla ayarlayamazsınız. Varsayılan yerel, OneEntry Yönetim Panelinde yapılandırılır:

Not: Aynı anda yalnızca bir yerel varsayılan olabilir.


Pasif yerelleri kullanıcılara göstermeli miyim?

Hayır! Her zaman isActive ile filtreleyin:

Neden? Pasif yereller:

  • Geliştirme aşamasında olabilir (içerik hazır değil)
  • Geçici olarak devre dışı olabilir
  • Tüm içerikler için çevirileri olmayabilir

Eksik çevirileri nasıl yönetirim?

Yedekleme mantığını kullanın.


Yerelleri önbelleğe alabilir miyim?

Evet! Yereller nadiren değişir, bu nedenle önbelleğe almak önerilir.


Next.js i18n ile Locales kullanabilir miyim?

Evet! OneEntry yerellerini Next.js ile entegre edin.


Yerelleri dil bazında nasıl gruplarım?

Aynı dilin varyantlarını gruplayın.


Eğer UI öğelerini (CMS içeriği değil) çevirmem gerekirse ne yapmalıyım?

OneEntry Locales modülü yalnızca CMS içeriği yerelleri içindir. UI çevirisi için:

Seçenek 1: i18n kütüphanesini kullanın (react-i18next, next-i18next)

Seçenek 2: UI çevirilerini OneEntry'de saklayın.

Bir "çeviriler" sayfa türü oluşturun ve çeviri dizelerini alın.


💡 Önemli Notlar

Yereller Salt Okunurdur

Locales modülü salt okunurdur:

  • ✅ Yerelleri alın
  • ✅ Aktif duruma göre filtreleyin
  • ✅ Varsayılan yereli bulun
  • ❌ Yerel oluşturamazsınız
  • ❌ Yerel güncelleyemezsiniz
  • ❌ Yerel silemezsiniz

Değiştirmek için: OneEntry Yönetim Panelini kullanın.


Her Zaman Aktif Yerelleri Filtreleyin

Kullanıcılara yalnızca aktif yerelleri gösterin.

Neden? Pasif yerellerin tam çevirileri olmayabilir.


Önbelleğe Alma Önerilir

Yereller nadiren değişir - önbelleğe alma uygulayın.


İçerik Yerelleri ile Senkronize Olun

UI dillerinin mevcut içerikle eşleştiğinden emin olun.


🎓 En İyi Uygulamalar

  • Her zaman aktif yerelleri filtreleyin - Sadece etkin dilleri gösterin
  • Yerelleri önbelleğe alın - Nadiren değişir, performans için önbelleğe alın
  • Eksik çeviriler için varsayılan yereli yedek olarak kullanın - Çeviri eksikliklerini yönetin
  • Kullanıcı tercihini kaydedin - Dil seçimini hatırlayın
  • Yerel kodlarını doğrulayın - Kullanımdan önce yerelin var olup olmadığını kontrol edin
  • Tarayıcı dilini tespit edin - Kullanıcının dilini otomatik olarak seçin
  • Dile göre gruplayın - Dil varyantlarını mantıklı bir şekilde gösterin

Modülün kullanıcı arayüzü hakkında daha fazla bilgi https://doc.oneentry.cloud/docs/category/languages

Locales modülünün tanımı

'Locales' modülü, OneEntry'de çok dilli desteği sağlar.

OneEntry Platformundaki çok dilli desteği sayesinde, kontrol panelinizin arayüzünü esnek bir şekilde özelleştirebilir ve projenizde dilleri rahatlıkla yönetebilirsiniz. Bu bölümde, dillerle çalışma prensiplerini öğrenebilirsiniz.


const { Locales } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);


🔗 İlgili Dokümantasyon