Ana içeriğe atla

Genel Bakış

Dinamik İçerik, her kitle için ayrı sürümler oluşturmadan mesajları ölçekte kişiselleştirmenizi sağlar. İster çok dilli mesajlar gönderiyor olun ister içeriği bölge veya kampanyaya göre uyarlıyor olun, Dinamik İçerik her kullanıcı için otomatik olarak ayarlanan tek bir mesaj tanımlamanıza olanak tanır. Bunu, içerik çeşitlemelerini içeren verilerle bir CSV dosyası yükleyerek veya Template API’lerimizi programatik olarak kullanarak ve Liquid Sözdizimi kullanarak mesajınızda bu değerlere referans vererek yaparsınız. Bir mesaj gönderildiğinde, OneSignal her kullanıcı için Data Tag’lerine göre uygun içeriği çeker. Dinamik İçerik Push, E-posta ve SMS’te çalışır ve şunlar için idealdir:
  • Çok dilli onboarding veya pazarlama akışları
  • Bölge veya segment’e özel promosyonlar
  • Harici kampanya verilerinden kaynaklanan kişiselleştirme
Temel faydalar:
  • Ölçekte kişiselleştirme – Düzinelerce mesaj varyantı oluşturup yönetmeden özel deneyimler sunun.
  • Çok dilli destek – Her kullanıcının tercih ettiği dilde otomatik olarak görüntülenen tek bir mesaj yazın.
  • Dinamik segmentasyon – Dil, bölge, plan veya campaign_id gibi özel etiketler gibi kullanıcı özelliklerine göre mesaj içeriğini değiştirin.
  • Sorunsuz işbirliği – Çevirmenlerin veya teknik olmayan ekiplerin mesaj içeriğini doğrudan CSV dosyalarında oluşturmasına ve düzenlemesine izin verin—OneSignal girişi gerekmez.
  • Kanallar arası uyumluluk – Aynı CSV mantığını Push, E-posta ve SMS kampanyalarında kullanın.
Yaygın kullanım senaryoları:
  • Ülke veya şehir bazında etkinlik duyuruları
  • Kampanya ID’sine veya satın alma geçmişine dayalı kişiselleştirilmiş push bildirimleri
  • Kullanıcı grupları arasında birden fazla konu satırı veya mesaj test etme
Mesajlarınızı kişiselleştirmek için daha fazla seçenek için Mesaj Kişiselleştirme bölümüne bakın.

Dinamik İçerik kurulumu

Yeni bir mesaj veya şablon oluşturun. Kontrol panelinden: Dinamik İçerik’i seçin.
  • Mesaj içeriğini Data Tag’lere eşleyen bir CSV dosyası yükleyin.
Template API’lerinden: dynamic_content özelliğini kullanın.
  • Dinamik içeriğiniz sık sık değişiyorsa harika bir çözüm.

Push oluşturma editöründe bulunan Dinamik İçerik düğmesi.

İçeriğinizi biçimlendirin

Boş bir dosyayla başlayabilir veya sağlanan şablonlardan birini seçebilirsiniz:
  • Çok dilli
  • İçerik kişiselleştirme

OneSignal tarafından sağlanan CSV şablon seçenekleri.

API detayları için bakınız:

CSV gereksinimleri

  • Dosya boyutu 200 KB’nin altında olmalıdır
  • Sütun başlıkları:
    • Yalnızca alfanümerik
    • Boşluk yerine alt çizgi (_) kullanın
    • Özel karakterlerden kaçının
  • Elektronik tablo düzenleyicinizde UTF-8 kodlamasını sağlayın
  • Çok Dilli Örnek
  • İçerik Kişiselleştirme Örneği
subscription.language özelliğini her bölüm için farklı çevirilere eşleyin.

Excel'deki VLOOKUP formülüne benzer şekilde, kullanıcı özelliklerini CSV'deki ilgili içerikle eşleştiririz.

Mesajlarda Dinamik İçerik’e referans verin

dynamic_content’ten kişiselleştirilmiş içerik görüntülemek için bu Liquid sözdizimini kullanın.
{{dynamic_content.file_name.section_name[data_tag_or_property]}}
Değiştirin:
  • file_name: CSV dosya adı (.csv olmadan).
  • section_name: Satırın ilk sütunundaki değer
  • data_tag_or_property: Bir Data Tag veya abonelik özelliğiyle eşleşen sütun başlığı

Yedek içerik

Yedek içerik eklemek, kullanıcıların boş içerik almasını önler. Mesajınızın şu durumlarda oluşturulmasını sağlar:
  • bir kullanıcının eşleşen bir etiketi veya özelliği yoksa.
  • bir kullanıcının dynamic_content’te mevcut olmayan bir etiketi veya özelliği varsa.

Kullanıcının eşleşen bir etiketi veya özelliği yoksa

subscription.language yoksa, bunun yerine dynamic_content’ten varsayılan sütuna referans verin.
{% assign lang = subscription.language | default: "default" %}
{{ dynamic_content.content_personalization_template.title[lang] }}

Kullanıcının dynamic_content’te mevcut olmayan bir etiketi veya özelliği varsa

subscription.language bir abonelikte varsa, ancak dynamic_content’te yoksa bunun yerine varsayılan sütuna referans verin.
// dynamic_content'inizde mevcut olan her dili ekleyin:
{% assign supported_langs = "de,en,es,fr,it,default" | split: "," %}
{% assign lang = subscription.language | default: "default" %}

// abonelik dilinin desteklenen dillerinizde olup olmadığını kontrol edin, yoksa dili 'default' olarak atayın
{% unless supported_langs contains lang %}
  {% assign lang = "default" %}
{% endunless %}

{{ dynamic_content.content_personalization_template.title[lang] }}

Örnekler

Çok dilli e-posta

E-postanızı yerelleştirmek için translations.csv kullanın:
  • {{dynamic_content.translations.section_1[subscription.language]}}
  • {{dynamic_content.translations.section_2[subscription.language]}}

Örnek, çok dilli örnek için liquid sözdiziminin nasıl ekleneceğini gösterir.

Liquid kullanarak konu satırlarını, ön başlıkları, düğme etiketlerini ve URL’leri güncelleyin.

Kişiselleştirilmiş push mesajı

Kullanıcıya özel push mesajları için content_personalization_template.csv kullanın. Her kullanıcının campaign_id etiketi hangi satırın kullanılacağını belirler.
Ön koşul: Her kullanıcının campaign_id adlı bir Data Tag’i olmalıdır. Gönderme zamanında, OneSignal kullanıcının campaign_id değerini CSV’nizdeki eşleşen satırı seçmek için kullanır.

CSV formatı (campaign_id ile anahtarlanan satırlar)

campaign_id,title,message,url
campaign_123,Flash deal for you,Tap to claim,https://example.com/flash
campaign_456,Weekend picks are here,See what's trending,https://example.com/weekend
default,Our latest offers,See what's new,https://example.com
  • İlk sütun (campaign_id) kullanıcının campaign_id etiket değeriyle eşleşmesi gereken satır anahtarıdır.
  • Diğer sütunlar (title, message, url) push’a ekleyeceğiniz alanlardır.
  • Etiketlenmemiş veya bilinmeyen değerlerin hala geçerli içerik oluşturması için bir default satırı ekleyin.

Liquid CSV’ye nasıl eşlenir

{{ dynamic_content.content_personalization_template[campaign_id].title }}
{{ dynamic_content.content_personalization_template[campaign_id].message }}
{{ dynamic_content.content_personalization_template[campaign_id].url }}
  • content_personalization_template → CSV dosya adı (.csv’yi çıkarın).
  • [campaign_id] → ilk sütun değeri kullanıcının campaign_id etiketine eşit olan satırı seçer.
  • .title / .message / .url → o satırdan seçilen sütunu döndürür.

Yedek örneği (önerilir)

{% assign cid = campaign_id | default: "default" %}

{% unless dynamic_content.content_personalization_template[cid] %}
  {% assign cid = "default" %}
{% endunless %}

{{ dynamic_content.content_personalization_template[cid].title }}
{{ dynamic_content.content_personalization_template[cid].message }}
{{ dynamic_content.content_personalization_template[cid].url }}
Başlık kuralları: Alfanümerik/alt çizgileri tercih edin (örn. campaign_id, title). Boşluk veya özel karakterler kullanmanız gerekiyorsa, hash notasyonuyla erişin:
{{ dynamic_content.file_name["row key"]["column key"] }}
Dynamic Content personalization Liquid example

Örnek, içerik kişiselleştirme örneği için liquid sözdiziminin nasıl ekleneceğini gösterir.


Test etme ve önizleme

1

Bir test CSV'si oluşturun

Çok dilli test:
  • Sütunlar: email, language
Kişiselleştirme testi:
  • Sütunlar: external_id, campaign_id

Yüklemek ve e-posta test edicileri segmenti oluşturmak için örnek CSV.


Birden fazla varyasyonu test etmek için e-postalarda + adresleme kullanın: username+test@example.com

external_id ve campaign_id etiketiyle test ediciler segmenti oluşturmak için yüklenecek örnek CSV.

2

Test segmentinizi yükleyin

Abonelikler veya Segmentler > Kullanıcıları Yükle/İçe Aktar’a gidin.İlk sütunu tanımlayıcı olarak ayarlayın. Diğer tüm sütunlar kullanıcı özellikleri veya Data Tag’ler olarak kabul edilir.

Gerektiğinde tekrarlamak için test edicilerinizin bir segmentini oluşturun.

Kullanıcı verilerini yükleme hakkında daha fazla bilgi için İçe Aktarma bölümüne bakın.
3

Mesajı görüntüleyin

Test mesajlarınızı gönderdikten sonra, görüntülemeyi doğrulamak için gelen kutularınızı veya cihazlarınızı kontrol edin.
dynamic_content oluşturulmuyorsa, Yedek içerik bölümüne bakın

Örnek, Dinamik İçerik ile gönderilen e-postayı gösterir.

Örnek, Dinamik İçerik ile gönderilen push'u gösterir.

Artık bu şablonları ve CSV’leri kullanarak kişiselleştirilmiş mesajlaşmayı ölçeklendirebilirsiniz.

Kullanım değerlendirmeleri

Dinamik İçerik ile Özel Veri ne zaman kullanılır

  • Çeşitli diller veya kişiselleştirilmiş mesaj blokları için Dinamik İçerik kullanın.
  • Tek bir dilde basit, satır içi kişiselleştirme için Özel Veri kullanın.

Şablonları düzenleme

Güncellemek için CSV’leri yeniden yükleyin veya Şablon Güncelleme API’sinin dynamic_content özelliğini kullanın.

Anahtarlardaki özel karakterler

Anahtarlar alfanümerik olmayan karakterler içeriyorsa hash notasyonu kullanın:
{{ dynamic_content.file_name["!the_row!"]["&the_column&"] }}
Standart alfanümerik anahtarlar için nokta notasyonu kullanın:
{{ dynamic_content.file_name.the_row.the_column }}

İlgili makaleler