Shopify temasını ve mağaza içeriğini çevirmek
Kısa yanıt
Bir Shopify mağazası katman katman çevrilir. Tema metinleri temanın dil (locale) dosyalarında durur ve Shopify’ın dil düzenleyicisinde düzenlenir. Ürünler, koleksiyonlar, sayfalar ve blog yazıları Translate & Adapt, CSV içe aktarma ya da bir uygulamayla çevrilir. Ödeme sayfası metinleri ödeme ayarlarında düzenlenir. Çevrilmemiş tema metinleri varsayılan dile düşer; şablonlara gömülmüş metinlerin ise hiç çeviri anahtarı yoktur.
- Tema metinleri temanın
localesdizinindeki JSON dil dosyalarında saklanır ve Liquid’intfiltresiyle yazdırılır. - Bir temadaki her dil dosyası en fazla 3.400 çeviri saklayabilir.
- Bir tema alanının çevirisi yoksa yerine temanın varsayılan dili gösterilir.
- Translate & Adapt en fazla 2 dili otomatik çevirebilir; politikalar yalnızca elle çevrilebilir.
- Ürün, makale ve blog etiketleri çevrilemez.
Shopify’da ikinci bir dil nadiren tümden bozulur; parça parça bozulur: çevrilmiş bir ürün sayfasında İngilizce bir “Add to cart”, çevrilmiş bir ana sayfada çevrilmemiş bir banner, Arapça bir menüde İngilizce bir beden rehberi. Her parça mağazanın farklı bir katmanından gelir ve her katman farklı bir yerde çevrilir.
Çevrilmiş bir mağazanın dört katmanı
| Katman | Örnekler | Nerede çevrilir |
|---|---|---|
| Tema metinleri | Düğme etiketleri, sepet mesajları, form hataları, bölüm varsayılanları | Shopify’ın dil düzenleyicisi (dil dosyaları), Translate & Adapt ya da CSV içe aktarma |
| Mağaza içeriği | Ürünler, koleksiyonlar, sayfalar, blog yazıları, menüler, politikalar | Translate & Adapt, CSV içe aktarma ya da üçüncü taraf bir uygulama |
| Ödeme sayfası | Ödeme sayfası alanları ve mesajları | Settings > Checkout, ardından çevirileri |
| Uygulamalar | Yorumlar, açılır pencereler, app block’lar | Dil destekliyorsa uygulamanın kendi ayarları |
Önce dili eklemeniz gerekir. Settings > Languages altında dili ekler, görüneceği alan adlarını seçer, çevirileri ekler ve yayınlarsınız. Basic’ten Advanced’e kadar planlardaki mağazalar en fazla 20 dil, Plus ve Enterprise mağazaları en fazla 30 dil yayınlayabilir. Yayınlanan her dil /fr gibi bir alt klasör ya da bir alt alan adı alır.
Tema metinleri: dil dosyaları
Bir tema arayüz metinlerini locales dizinindeki JSON dil dosyalarında (locale files) tutar. Varsayılan dil dosyası en.default.json gibi adlandırılır; diğer diller fr.json ya da es-ES.json gibi IETF dil etiketlerini kullanır. Şablonlar metnin kendisini içermez; t filtresiyle bir anahtarı çağırır:
{{ 'products.product.add_to_cart' | t }}
{{ 'layout.header.hello_user' | t: name: customer.first_name }}t filtresi çoğul biçimleri de Unicode CLDR kategorilerini (zero, one, two, few, many, other) kullanan bir count özniteliğiyle işler. Bu, İngilizce dışındaki diller için önemlidir: bazı dillerde “one” ve “other”dan daha fazla çoğul biçim vardır ve çoğulları elle kuran bir tema bunları yanlış gösterir.
Mağaza sahipleri bu metinlere Shopify’ın dil düzenleyicisi, Translate & Adapt, CSV içe aktarma ya da üçüncü taraf bir uygulamayla ulaşır. Bilinmesi gereken iki sınır var. Her dil dosyası en fazla 3.400 çeviri saklayabilir. Bir alan çevrilmeden bırakılırsa temanın varsayılan dili gösterilir; çevrilmiş bir sayfadaki başıboş İngilizcenin çoğu buradan gelir.
Bazı metinler neden hiç çevrilemez?
Bir dil anahtarı ya da bölüm ayarı yerine doğrudan bir şablona veya snippet’e yazılmış metnin çeviri anahtarı yoktur. Hiçbir çeviri aracı ona ulaşamaz ve her dilde aynen görünür. Bu genellikle özel temalarda ve yıllardır üzerinde değişiklik yapılan temalarda görülür. Çözüm koddadır: her metni dil dosyalarına taşıyıp t ile yazdırın ya da çevrilebilen bir bölüm ayarına taşıyın. Dil anahtarları üç düzeyli bir yapı izler (kategori, grup, açıklama); blogs.article_comment.submit_button_text gibi açıklayıcı anahtarlar çevirmene metnin nerede göründüğünü söyler ve yanlış çevirileri azaltır.
Bağlantılar da aynı türden bir sorundur. Shopify’ın tema rehberi koda gömülü yollardan kaçınmayı ve URL’leri Liquid nesnelerinden ya da routes nesnesinden, JavaScript’te ise window.Shopify.routes.root üzerinden oluşturmayı önerir. Fransızca bir sayfadaki koda gömülü bir /collections/sale bağlantısı ziyaretçiyi varsayılan dile geri gönderir.
Mağaza içeriği: Translate & Adapt ve içe aktarmalar
Shopify’ın Translate & Adapt uygulaması ürünleri, koleksiyonları, blog yazılarını, politikaları ve sayfaları çevirir; içeriği pazara göre de uyarlayabilir, örneğin bir bölge için farklı bir mesaj. En fazla 2 dil için otomatik çeviri sunar. Politikalar otomatik çevrilmez, elle çevrilmeleri gerekir.
Otomatik çeviriden sonra kaynak içerik değişirse çeviri senkron dışı olarak işaretlenir ve Auto-translate’i bir sonraki çalıştırışınızda yenilenir. Elle eklediğiniz ya da düzenlediğiniz çevirilerin üzerine yazılmaz. Bu adımı kimin yapacağını belirleyin: varsayılan dilde düzenlenen bir ürün açıklaması, biri harekete geçene kadar diğer tüm dillerde eski kalır.
Bazı içerikler uygulamayla çevrilemez: koleksiyon filtreleri, Shopify Forms uygulamasıyla yapılmış formlar, manuel ödeme yöntemi talimatları, ürün görselleri ve etiketler. Ürün, makale ve blog etiketleri hiç çevrilemez; bu da etiketleri müşterilere, örneğin filtre etiketi olarak gösteren temalar için önemlidir. Büyük kataloglarda alternatifler CSV dışa ve içe aktarma ya da üçüncü taraf bir uygulamadır.
HTML ya da Liquid içerik çevirirken yalnızca görünen metni çevirin. HTML etiketlerini, bağlantı hedeflerini ve simge kodlarını koruyun; {{ }} ya da {% %} içindeki Liquid etiketlerini asla çevirmeyin.
Ödeme sayfası ve uygulamalar
Ödeme sayfası metinleri Settings > Checkout’tan Edit checkout content ile düzenlenir. Mağaza çevrilmişse varsayılan ödeme sayfası metnini her değiştirdiğinizde çevirileri de güncelleyin; yoksa diğer diller eski ifadeyi korur. Shopify 33 dil için önceden çevrilmiş ödeme sayfası metni sunar; bu listenin dışındaki bir dilde ödeme sayfası ve sistem mesajlarının dil düzenleyicisinden elle çevrilmesi gerekir.
Unutulan katman uygulamalardır. Bazı uygulama içerikleri Translate & Adapt’in erişimi dışındadır; bu yüzden vitrinde görünen her uygulamanın her dilde kontrol edilmesi gerekir. Dil desteği olmayan bir uygulamanın değiştirilmesi ya da vitrindeki parçasının temada yeniden yapılması gerekebilir.
Dil seçicisi
Müşterilerin dil değiştirebilmesi gerekir. Liquid temada dil seçicisi bir localization formunun içinde durur, bir language_code alanı gönderir ve localization.available_languages listesini gösterir. Shopify’ın önerisi, onu yalnızca birden fazla dil sunulduğunda göstermektir.
Çevirileri güncel tutmak
Çeviri tek seferlik bir iş değildir. Her yeni ürün, sayfa, bölüm ya da tema güncellemesi varsayılan dilde metin ekler ve hiçbir şey bu metnin çevrilmeden yayına çıkmasını engellemez. Çok dilli bir mağazayı tutarlı tutan üç alışkanlık:
- Her dil için bir sorumlu. Biri her dildeki yeni ve değişen içeriği belli bir takvimle kontrol eder; örneğin her kampanyadan önce.
- Tema güncellemelerinden sonra çeviri turu. Bir tema güncellemesi yeni metin ekleyebilir ve çevirisi olmayan her metin varsayılan dile düşer; bu yüzden güncellemeden sonra her dili kontrol edin.
- Geliştiriciler metin değil anahtar ekler. Her yeni bölüm ya da snippet, çoğul biçimler ve tarihler dahil, baştan itibaren
tfiltresiyle dil anahtarlarını kullanmalıdır. Dil dosyalarıdate_formatsde tanımlayabilir; bunlar her dil dosyasında bulunmalıdır, yoksa sayfa bir Liquid hatası gösterir._htmlile biten anahtarlar da HTML’lerini kaçış karakterine çevirmeden işler.
Çeviri kontrol listesi
- Temada şablonlara ve snippet’lere gömülmüş metinleri arayın; bunları dil anahtarlarına ya da ayarlara taşıyın.
- Koda gömülü bağlantıları Liquid URL’leri ya da
routesile değiştirin. - Dili ekleyip yayınlayın, sonra temanın metinlerini dil düzenleyicisinde çevirin ve her boşluğu doldurun.
- Mağaza içeriğini Translate & Adapt, içe aktarma ya da çevirmeninizle çevirin ve makine çevirisiyle gelenleri gözden geçirin.
- Politikaları elle çevirin ve ödeme sayfası metinlerinin çevirilerini güncelleyin.
- Vitrindeki her uygulamayı her dilde kontrol edin.
- Mağazayı her dilde telefonda baştan sona gezin: ana sayfa, koleksiyon, ürün, sepet, arama, hesap ve e-postalar.
Sağdan sola yazılan diller bunların hepsinin üstüne bir düzen katmanı ekler. Arapça için Shopify’da Arapça satış yazısına bakın.
Sık sorulan sorular
- Çevrilmiş Shopify mağazamda bazı metinler neden hâlâ İngilizce?
- Genellikle üç nedenden biriyle: tema metninin çevirisi yoktur, bu yüzden varsayılan dil görünür; metin bir şablona gömülüdür, bu yüzden çeviri anahtarı yoktur; ya da dilleri ayrıca yöneten bir uygulamadan gelir.
- Shopify mağazamı otomatik çevirebilir mi?
- Translate & Adapt en fazla 2 dili otomatik çevirebilir. Politikaların elle çevrilmesi gerekir; ürün görselleri ve etiketler gibi bazı içerikler de uygulamayla çevrilemez.
- Bir Shopify mağazasında kaç dil olabilir?
- Basic’ten Advanced’e kadar planlarda en fazla 20, Shopify Plus ve Enterprise’da en fazla 30 yayınlanmış dil.
- Bir ürünü düzenlediğimde otomatik çeviriler güncellenir mi?
- Senkron dışı olarak işaretlenir ve Auto-translate’i yeniden çalıştırdığınızda yenilenir. Elle eklediğiniz ya da düzenlediğiniz çeviriler değişmez.
