Çevirilerim görünmüyor — neyi kontrol etmeliyim?
Uygulamanız ham anahtarlar gösteriyorsa veya bazı dillerde çeviriler eksikse, bu kontrol listesini takip edin.
Uygulamanız çevrilmiş metin yerine ham anahtarlar (örneğin common.welcome_title) gösteriyorsa veya bazı dillerde çeviriler eksikse, bu kontrol listesini adım adım takip edin.
1. Adım: Çeviriler yayınlandı mı?
En yaygın neden, yayınlanmamış çevirilerdir. Dashboard'unuzu kontrol edin:
- Projenize gidin
- "Taslak değişiklikler" göstergesini arayın
- Yayınlanmamış değişiklikler varsa "Yayınla" seçeneğine tıklayın
Yalnızca yayınlanan çeviriler CDN üzerinde kullanılabilir. Taslak çeviriler yalnızca dashboard'da görünür.
2. Adım: CDN'yi doğrudan kontrol edin
Çevirilerin CDN'de olup olmadığını doğrudan sorgulayarak doğrulayın:
# Manifesti kontrol edin (mevcut locale listesi)
curl https://cdn.better-i18n.com/your-org/your-project/manifest.json
# Belirli bir locale için çevirileri kontrol edin
curl https://cdn.better-i18n.com/your-org/your-project/en/translations.json
Manifest boş bir nesne veya { "fallback": true } döndürüyorsa, çevirileriniz henüz yayınlanmamıştır.
3. Adım: Proje yapılandırmasını doğrulayın
SDK yapılandırmanızın projenizle eşleştiğinden emin olun:
// Proje tanımlayıcısını bir kez daha kontrol edin
const i18n = createI18n({
project: 'acme/dashboard', // Tam olarak eşleşmeli: org/project
defaultLocale: 'en', // Dashboard'daki kaynak locale ile eşleşmeli
});
Yaygın hatalar:
- Yanlış
org/projectformatı (büyük/küçük harf duyarlı) defaultLocaleile dashboard'daki kaynak dil arasındaki uyumsuzluk- Public key gerekirken secret key kullanmak (veya tam tersi)
4. Adım: Locale normalizasyonunu kontrol edin
CDN, küçük harfli BCP 47 locale kodlarını kullanır. Uygulamanız pt-BR kullanırken CDN pt-br bekliyorsa, çeviriler eşleşmez.
SDK bunu normalizeLocale() aracılığıyla otomatik olarak yönetir; ancak URL'leri manuel olarak oluşturuyorsanız küçük harfe dönüştürdüğünüzden emin olun.
5. Adım: Tarayıcı konsolunu kontrol edin
DevTools'u açın ve şunlara bakın:
- Network sekmesi —
cdn.better-i18n.com'a bir istek var mı? Yanıt ne? - Konsol hataları —
BETTER_I18N_PROJECT is not configuredgibi bir hata var mı? - Yanıt gövdesi — çeviriler JSON'ı anahtarlarınızı içeriyor mu?
6. Adım: Önbellek zamanlaması
Yayınladıktan sonra, önbelleklerin eski veri sunabileceği kısa bir süre olabilir:
| Önbellek katmanı | Maks. eski veri süresi |
|---|---|
| CDN edge | Yayınlamada anında temizlenir |
SDK bellek içi (TtlCache) |
60 saniyeye kadar |
| Next.js ISR | 30 saniyeye kadar (varsayılan) |
| Tarayıcı HTTP önbelleği | 60 saniyeye kadar |
Yayınladıktan 60 saniye sonra bekleyin ve tarayıcınızı tamamen yenileyin (Cmd+Shift+R).
7. Adım: Namespace eşleşmesini kontrol edin
Namespace kullanıyorsanız, kodunuz ile dashboard arasında eşleştiğinden emin olun:
// Kod 'common' namespace'ini kullanıyor
const t = useTranslations('common');
// Dashboard'da 'common' namespace altında anahtarlar bulunmalı
// common.welcome_title → "Hoş geldiniz!"
Anahtarlarınız varsayılan namespace'deyken kodunuz belirli bir namespace istiyorsa (veya tam tersi), çeviriler çözümlenmez.
Hâlâ takıldınız mı?
CLI doctor komutunu çalıştırın:
better-i18n doctor
Bu komut yapılandırmayı, kimlik doğrulamayı, API bağlantısını ve yaygın kurulum sorunlarını kontrol eder.
Sonraki adımlar
Bu makale yardımcı oldu mu?