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 Kodu | Dil | Bölge | Açıklama |
|---|---|---|---|
en_US | İngilizce | Amerika Birleşik Devletleri | Amerikan İngilizcesi |
en_GB | İngilizce | Büyük Britanya | Britanya İngilizcesi |
ru_RU | Rusça | Rusya | Rusça |
es_ES | İspanyolca | İspanya | Avrupa İspanyolcası |
es_MX | İspanyolca | Meksika | Meksika İspanyolcası |
ar_SA | Arapça | Suudi Arabistan | Arapça (Suudi Arabistan) |
fr_FR | Fransızca | Fransa | Fransızca |
de_DE | Almanca | Almanya | Almanca |
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 Listesi | Diller OneEntry yapılandırmasıyla senkronize |
| Varsayılan Yerel Tespiti | Varsayılan dili otomatik olarak belirleyin |
| Aktif Yerel Filtreleme | Sadece etkin dilleri gösterin |
| Merkezi Yönetim | Dilleri yönetim panelinde güncelleyin, kodda değil |
| Kullanıcı Deneyimi | Kullanıcıların dillerini seçmelerine izin verin |
Yaygın Kullanım Durumları
| Kullanım Durumu | Açıklama | Örnek |
|---|---|---|
| Dil Seçici | Dilleri değiştirmek için açılır menü | Dil bayrakları ile web sitesi başlığı |
| İçerik Yerelleştirme | Kullanıcının dilinde içerik alın | İngilizce veya Rusça blog yazıları |
| Yönlendirme | Her 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ı Tercihleri | Kullanıcının dil seçimini hatırlayın | Yereli ç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:
| Durum | Anlamı | Ne Zaman Kullanılır |
|---|---|---|
Aktif (isActive: true) | Yerel etkin ve içeriği var | Dil seçicide gösterin |
Pasif (isActive: false) | Yerel devre dışı veya hazırlanıyor | Kullanı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:
| Alan | Format | Örnek | Kullanım Amacı |
|---|---|---|---|
code | dil_BÖLGE | en_US, ru_RU | Tam yerel tanımlaması |
shortCode | dil | en, ru | Sadece dil tanımlaması |
📊 Hızlı Referans Tablosu
| Yöntem | Açıklama | Kullanı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
- Pages Modülü - Yerelleştirilmiş sayfa içeriğini alın
- Products Modülü - Çok dilli ürünleri yönetin
- GeneralTypes Modülü - Varlık türü sınıflandırması
- Admins Modülü - Yerelleri yöneten yönetici kullanıcılar