Ana içeriğe atla
Bu kılavuz, Google Tag Manager (GTM) kullanarak OneSignal’i web sitenizle nasıl entegre edeceğinizi açıklar. OneSignal service worker kurulumunu, güncellenmiş başlatma kodunu kapsar ve OneSignal’e kullanıcı profili etiketleri (öznitelikleri) göndermek için yeni bir adım tanıtır.

OneSignal uygulamanızı kurun

Web push kurulumu belgelerimizi takip edin. İstendiğinde, aşağıdaki kodda değiştireceğiniz App ID’nizi not edin.

OneSignal başlatma kodunu kopyalayın ve güncelleyin

Add Code to Site adımına geldiğinizde Copy Code’a tıklayın.

OneSignal panonuzda sağlanan kodu kopyalayın.

Google Tag Manager ile çalışması için kodda burada gösterildiği gibi bazı ayarlamalar yapmanız gerekecektir:
<script src="https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.page.js" defer></script>
<script>
  window.OneSignalDeferred = window.OneSignalDeferred || [];
  // remove async
  OneSignalDeferred.push( function(OneSignal) {
    // remove await
    OneSignal.init({
      // replace with YOUR_APP_ID
      appId: "YOUR_APP_ID",
    })
    // Add event to track OneSignal initialization if desired
      .then(function() {
        dataLayer.push({ event: 'OneSignalInitialized' });
      }).catch(function(e) {
        console.error("OneSignal initialization failed:", e);
    });
  });
</script>

Google Tag Manager’ı kurun

Google Tag Manager Hesabınıza giriş yapın ve OneSignal Init adlı yeni bir etiket oluşturun. Tag Configuration/Tag Type Custom HTML olmalıdır. OneSignal kodunu HTML alanına yapıştırın. Advanced Settings > Tag firing options altında Once per page’i seçin.
Triggering için Initialization - All Pages’i seçin.
Etiketinizi kaydetmek için sağ üstteki Save’e tıklayın. Workspace’inize döndüğünüzde, değişiklikleri dağıtmak için Publish veya Submit yapabilirsiniz. Konteynerinizin OneSignal’in yüklenmesini istediğiniz sitenin her sayfasında kurulu olduğundan ve başlatma etiketinin beklendiği gibi tetiklendiğinden emin olun.
Ek kurulum yardımına ihtiyacınız varsa Google Tag Manager Yardımı’na bakın.

Test etme

Web sitenizi ziyaret edin ve kurduğunuz istem ayarlarına göre push bildirimlerine abone olmanız istenmelidir. Ayrıntılar için Web izin istemleri’ne bakın. Subscriptions’larınızı görmek için OneSignal Dashboard Audience > Subscriptions’ı kontrol edin. Aboneliğinizi bulun ve Test subscriptions olarak ayarlayın. Ardından kendinize bir bildirim göndermek için Messages > New Push’a gidin.
Sorunlarla karşılaşıyorsanız, yaygın düzeltmeler için Web Push Sorun Giderme Kılavuzu’na göz atın.
Sonraki adımlar için Web Push Tutorials’ı ziyaret edin veya diğer GTM seçenekleri için aşağıya devam edin.

Veri etiketleri ekleyin

Bu adım, OneSignal.User.addTags yöntemini kullanarak GTM’den OneSignal’e özel User Data Tags (öznitelikleri) gönderir. Etiketleri ayarlamak için aşağıdaki kod parçacığını kullanın. "TAG_1" ve "VALUE_1" yerine istediğiniz etiket anahtarını ve değerini yazın:
<script>
window.OneSignalDeferred = window.OneSignalDeferred || [];
OneSignalDeferred.push(function(OneSignal) {
  OneSignal.User.addTags({
      "TAG_1": "VALUE_1"
  });
});
</script>
Etiketin uygun koşullar altında tetiklenmesini sağlamak için, şunları birleştiren bir Trigger Group yapılandırın:
  • Trigger 1: OneSignalInitialized olayında tetiklenen bir Custom Event tetikleyicisi (OneSignal’in başlatıldığından emin olur).
  • Trigger 2: Kullanmak istediğiniz ek tetikleyici (örneğin, bir sayfa görüntüleme veya özel bir kullanıcı olayı).
Trigger Group’u oluşturmak için:
  1. GTM Workspace’inizde Triggers’a gidin ve New’e tıklayın.
  2. Tetikleyici türü olarak Trigger Group’u seçin.
  3. Tetikleyici grubunu adlandırın (örn. “OS Tag – Initialized & Custom Trigger”).
  4. Configure Trigger Group altında şu tetikleyicileri ekleyin:
    1. Custom Event Trigger:
      1. Tetikleyici türü olarak Custom Event’i seçin.
      2. Olay adını OneSignalInitialized olarak ayarlayın.
    2. Additional Trigger:
      1. Kriterlerinizi karşılayan tetikleyiciyi seçin (örn. All Pages veya kullanıcı girişinden sonra gibi özel bir tetikleyici).
  5. Trigger Group’u kaydedin.
  1. GTM Workspace’inizde New Tag’e tıklayın.
  2. Tag Configuration’ı Custom HTML olarak ayarlayın ve Step 5.1’deki kod parçacığını yapıştırın.
  3. Advanced Settings > Tag firing options altında Once per page seçin (veya ihtiyaçlarınıza göre ayarlayın).
  4. Triggering için Step 5.2’de oluşturduğunuz Trigger Group’u seçin.
  5. Etiketi kaydedin.

Değişiklikleri yayınlayın

Yeni etiketi ve tetikleyici grubunu yapılandırdıktan sonra, yeni kullanıcı etiketleme işlevselliğini dağıtmak için konteynerinizi yayınlayın.

Sorun giderme

Hem başlatma etiketinin hem de kullanıcı profili etiketleme etiketinin doğru şekilde tetiklendiğinden emin olmak için GTM’nin Preview ve Debug Mode’unu kullanın. OneSignal ile ilgili hatalar için tarayıcı konsolunu kontrol edin ve hata bildirimleri için OneSignal Dashboard’unuzu inceleyin. DataLayer Events: Analitik kurulumunuzda daha fazla izleme için olayların (örn. OneSignalInitialized) beklendiği gibi dataLayer’a push edildiğini onaylayın. Daha fazla ayrıntı için Web SDK sorun giderme’ye bakın.
Bu güncellemelerle, web siteniz artık en son OneSignal başlatmayı kullanıyor ve OneSignal.User.addTags yöntemini kullanarak GTM üzerinden özel kullanıcı profili etiketleri gönderiyor.Eklenen tetikleyici grubu, etiketin yalnızca OneSignal başlatıldıktan sonra ve seçtiğiniz koşullar karşılandığında tetiklenmesini sağlar.
Ek özelleştirme veya gelişmiş izleme için Web SDK reference ve Google Tag Manager belgelerimize başvurun. Herhangi bir sorunuz varsa veya sorunla karşılaşırsanız, lütfen Web SDK sorun giderme’ye bakın veya OneSignal desteği ile iletişime geçin.