Bu kılavuz, OneSignal’de bir kullanıcının dilinin nasıl ayarlanacağını ve push bildirimleri, e-postalar ve uygulama içi mesajlarda tercih ettikleri dilde mesajların nasıl gönderileceğini açıklar.
Kullanıcının dilini ayarlayın
OneSignal, web veya mobil SDK’lar kullanılarak bir kullanıcı ilk oluşturulduğunda language özelliğini cihazın dilinden otomatik olarak ayarlar.
Ayrıca kullanıcının dilini ISO 639-1 2 harfli dil kodunu kullanarak manuel olarak ayarlayabilir veya güncelleyebilirsiniz:
- SDK’nın
setLanguage metodu.
- Create user veya Update user API’lerindeki
language alanı.
- CSV İçe Aktarıcı’daki
language sütunu.
Farklı dillerde mesajlar gönderin
Mesajlaşma kanalına göre yerelleştirme seçeneklerini görüntülemek için aşağıdaki sekmeleri kullanın.
Push Notifications
Email
In-app messages
SMS
Dashboard’dan gönderme
Messages > Push > New Message veya Şablonlar’dan Add Languages’e tıklayın. Şunlardan birini seçin:Seçenek 1: Onay kutuları
Desteklediğiniz dilleri seçin. Seçilmeyen herhangi bir dil Any/İngilizce’ye geri dönecektir.Seçenek 2: Dil içeriğini içe aktarma
Mesajı her dilde biçimlendirmek için sağlanan şablonu kullanın.İçeriği “Add Languages” alanına geri kopyalayıp yapıştırın.Çift kontrol etmek için içeriği önizleyin, içeriği ekleyin ve editörde belirlenen içerik doldurulmuş şekilde yeni sekmeler görünecektir.Seçenek 3: Dinamik İçerik
Desteklediğiniz dillerle bir CSV dosyası oluşturmayı ve yüklemeyi içeren Dinamik İçerik’i kullanın.Sorun giderme
- İngilizce gerekli: Varsayılan olarak
en için bir satır ekleyin.
- Doğru başlıkları kullanın:
language_code, title, subtitle, message
- Virgülle ayrılmış değerler: Uygun CSV biçimlendirmesini sağlayın.
- Desteklenmeyen dil: UI veya şablonda listelenmiyorsa, desteklenmez. Bir sonraki en iyi seçeneği kullanın ve
support@onesignal.com ile iletişime geçin.
Dashboard editörü standart bir HTML alanı kullanır. % gibi özel karakterler RTL dillerinde görüntüleme sorunlarına neden olabilir. Biçimlendirme sorunlarını düzeltmek için bu karakterlerden sonra RLM işaretleri ekleyin.
API ile gönderme
contents ve headings alanları birden fazla dili destekler: {
"contents": {
"en": "English content",
"fr": "French content"
},
"headings": {
"en": "English heading",
"fr": "French heading"
}
}
Dashboard’dan gönderme
Messages > Email > New Message veya Şablonlar’dan şunlardan birini seçin:Seçenek 1: Segmentler
- Her dil için bir segment oluşturun.
- Her dil için bir şablon oluşturun.
- Her birini ilgili segmentine gönderin.
Seçenek 2: Liquid sözdizimi
Mesajda koşullu ifadeler oluşturmak ve kullanıcının diline göre uygun içeriği oluşturmak için Liquid sözdizimi ve özellik veya etiket değiştirme kullanın.{% assign language = subscription.language %}
{% if language == 'fr' %}
Bonjour {{ name }}!
{% elsif language == 'es' %}
Hola {{ name }}!
{% else %}
Hi {{ name }}!
{% endif %}
Seçenek 3: Dinamik İçerik
Desteklediğiniz dillerle bir CSV dosyası oluşturmayı ve yüklemeyi içeren Dinamik İçerik’i kullanın.
API ile gönderme
Create message API’yi kullanarak şunları yapabilirsiniz:
- Dashboard’da yaptığınız gibi dil segmentlerini veya filtrelerini hedefleyin.
custom_data, özellik veya etiket değiştirme kullanan Liquid sözdizimi ile mesaj Şablonları oluşturun. Bu seçenekler hakkında daha fazla ayrıntı için Mesaj Kişiselleştirme’ye bakın.
custom_data toplu kişiselleştirme örneği:{% assign eid = message.custom_data.users[subscription.external_id] %}
Hi {{ eid.first_name }}, you have {{ eid.points }} points. Your level is {{ eid.level }}.
{
"app_id": "YOUR_APP_ID",
"template_id": "YOUR_TEMPLATE_ID",
"include_aliases": {
"external_id": ["user123", "user456"]
},
"custom_data": {
"users": {
"user123": { "first_name": "John", "points": "150", "level": "Gold" },
"user456": { "first_name": "Sarah", "points": "200", "level": "Platinum" }
}
}
}
Müşteri görür:
- “Hi John, you have 150 points. Your level is Gold.”
- “Hi Sarah, you have 200 points. Your level is Platinum.”
Dashboard - Segmentler
Desteklemeniz gereken her dil için dile özgü bir Uygulama İçi Mesaj göndermek için:
- Her dil için bir segment oluşturun.
- Her dil için bir uygulama içi mesaj oluşturun.
- Her birini ilgili segmentine gönderin.
Etiket değiştirme
Mesajda koşullu ifadeler oluşturmak ve etiketlere göre uygun içeriği oluşturmak için Liquid sözdizimi ve etiket değiştirme kullanın.Uygulama içi mesajlar için yalnızca Etiket değiştirme desteklenir.
language : german
first_name : Jon
{% assign lang = language%}
{% if lang == "english" %}
Good day {{first_name}}!
{%- elsif lang == 'german' -%}
Guten Tag {{first_name}}!
{%- elsif lang == 'spanish' -%}
Buenos Dias {{first_name}}!
{%- elsif lang == 'french' -%}
Bonjour {{first_name}}!
{% else %}
Hello {{first_name}}!
{% endif %}
Dashboard’dan gönderme
Messages > SMS > New Message veya Şablonlar’dan şunlardan birini seçin:Seçenek 1: Segmentler
- Her dil için bir segment oluşturun.
- Her dil için bir şablon oluşturun.
- Her birini ilgili segmentine gönderin.
Seçenek 2: Dinamik İçerik
Desteklediğiniz dillerle bir CSV dosyası oluşturmayı ve yüklemeyi içeren Dinamik İçerik’i kullanın.
API ile gönderme
contents ve headings alanları birden fazla dili destekler: {
"contents": {
"en": "English content",
"fr": "French content"
},
"headings": {
"en": "English heading",
"fr": "French heading"
}
}
Desteklenen diller
Dil kodu, ISO 639-1 kodu 2 harfli formatında language kullanıcı özelliğine eşlenir. Aşağıdaki dil kodlarını destekliyoruz.
Dil kodu açılır pencerede ve CSV şablonunda yoksa, bu dil desteklenmez. Bir sonraki en iyi dili kullanmanızı ve support@onesignal.com adresine bir ürün talebi göndermenizi öneririz
| Language | Language Code |
| English | en |
| Arabic | ar |
| Azerbaijani | az |
| Bosnian | bs |
| Catalan | ca |
| Chinese (Simplified) | zh-Hans |
| Chinese (Traditional) | zh-Hant |
| Croatian | hr |
| Czech | cs |
| Danish | da |
| Dutch | nl |
| Estonian | et |
| Finnish | fi |
| French | fr |
| Georgian | ka |
| Bulgarian | bg |
| German | de |
| Greek | el |
| Hindi | hi |
| Hebrew | he |
| Hungarian | hu |
| Indonesian | id |
| Italian | it |
| Japanese | ja |
| Korean | ko |
| Latvian | lv |
| Lithuanian | lt |
| Malay | ms |
| Norwegian | nb |
| Persian | fa |
| Polish | pl |
| Portuguese | pt |
| Punjabi | pa |
| Romanian | ro |
| Russian | ru |
| Serbian | sr |
| Slovak | sk |
| Spanish | es |
| Swedish | sv |
| Thai | th |
| Turkish | tr |
| Ukrainian | uk |
| Vietnamese | vi |