Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi
Bu rehberde genel tanım ve form başarı olayı ele alınıyor. DataLayer, web sayfasındaki bilgileri Google Tag Manager gibi etiket yönetim sistemlerine düzenli biçimde aktarmak için kullanılan JavaScript veri katmanıdır. Tek başına veri göndermez veya etiket çalıştırmaz; sayfadaki bir olayı ve o olaya ait değerleri dataLayer.push() ile yayınlar. Google Tag Manager ise bu bilgileri bir tetikleyici ve değişken aracılığıyla kullanarak ilgili etiketi çalıştırır.

En sağlıklı akış şöyledir: Sayfa veya uygulama olayı dataLayer'a ekler, GTM bu olayı dinler, tetikleyici eşleştiğinde etiket çalışır. Örneğin bir form gönderildiğinde event değeri lead_form_submit olarak gönderilebilir. GTM'de bu ada sahip bir özel etkinlik tetikleyicisi oluşturulur ve form adı gibi diğer alanlar etiket içinde kullanılabilir.

En küçük uygulanabilir örnek​


Aşağıdaki kodu, ilgili formun başarıyla işlendiği noktaya yerleştirin. Formun yalnızca butona basılmasıyla değil, sunucu veya uygulama tarafından gerçekten başarılı kabul edildiğinde bu kodu çalıştırması önemlidir.

Kod:
<script>
window.dataLayer = window.dataLayer || [];

function reportLeadFormSuccess() {
  window.dataLayer.push({
    event: 'lead_form_submit',
    form_name: 'demo_contact_form'
  });
}

// Gerçek başarı yanıtını işleyen kodunuz bu fonksiyonu çağırır.
// reportLeadFormSuccess();
</script>

GTM kullanıyorsanız window.dataLayer = window.dataLayer || []; satırının, GTM kapsayıcı kodundan önce çalışması gerekir. Olay sonradan oluşuyorsa push() çağrısı olay anında yapılabilir. Örnek fonksiyonu tanımlar; sayfa yüklenir yüklenmez sahte bir başarı olayı üretmez. Testte geliştirici konsolundan reportLeadFormSuccess() çağrısı yapıp kuyruğu kontrol edebilirsiniz; gerçek sitede çağrı yalnız doğrulanmış başarı yanıtından sonra yapılmalıdır.

Ardından GTM içinde şu eşleştirmeyi kurun:

  1. Tetikleyici türü olarak özel etkinlik seçin ve etkinlik adını lead_form_submit girin.
  2. Form adı gibi alanları kullanacaksanız form_name adlı Data Layer Değişkeni oluşturun.
  3. Bu tetikleyiciyi yalnızca ölçmek istediğiniz etikete bağlayın.
  4. Önizleme modunda form akışını çalıştırın ve olayın listede göründüğünü doğrulayın.

Başarılı sonuçta GTM önizlemesinde lead_form_submit olayı ve form_name değeri görünür. Olay görünmüyorsa kod hiç çalışmamış, dataLayer başka bir adla oluşturulmuş veya çağrı formun gerçek başarı akışına bağlanmamış olabilir. Olay görünüyor fakat etiket çalışmıyorsa sorun genellikle tetikleyici koşulunda, etiketin yapılandırmasında veya önizleme ortamındaki filtrelemededir.

Bilgiler nasıl taşınır?​


Her push() çağrısı bir JavaScript nesnesi gönderir. event alanı çoğunlukla hangi işlemin gerçekleştiğini belirtir; diğer alanlar o işlemin bağlamını taşır. Alan adlarını baştan belirlemek, farklı sayfalarda aynı olay için farklı isimler kullanılmasını önler.

AlanÖrnekGörevi
eventlead_form_submitTetikleyicinin dinlediği olay adı
form_namedemo_contact_formOlayın hangi formdan geldiği
user_typememberİhtiyaç varsa olay bağlamı

Tablodaki alanlar yalnız örnektir; kullanılmayan alanları eklemeyin. Özellikle e-posta, telefon, ad-soyad veya doğrudan kişiyi tanımlayan başka bilgileri dataLayer'a koymak yerine olayın teknik kimliğini kullanın. Bir pazarlama veya analiz aracına aktarılacak alanların ilgili hizmetin veri politikalarıyla uyumlu olması gerekir.

Sık yapılan hatalar​


GTM kurulmadan veri gönderildiğini sanmak: DataLayer'a nesne eklemek, tek başına Analytics veya başka bir hizmete istek gönderildiği anlamına gelmez. İlgili etiket, tetikleyici ve değişken ayrıca kurulmalıdır.

Yanlış başarı noktasına push eklemek: Buton tıklamasını form başarı olayı gibi göndermek, hatalı veya tekrarlı dönüşüm oluşturabilir. Push çağrısını doğrulanmış başarı yanıtından sonra çalıştırın.

Değişkeni tetikleyicide kullanmamak: event olayın adıdır; form_name gibi diğer değerler için ayrıca Data Layer Değişkeni gerekir.

İsimleri tutarsız yazmak: lead_form_submit, leadFormSubmit ve büyük-küçük harf farklı adlar aynı olay kabul edilmez. Olay ve alan adları için sabit bir sözlük kullanın.

DataLayer'ı kurduktan sonra önce olayın, sonra değişkenin, en son da etiketin çalıştığını ayrı ayrı test edin. Böylece etiket tetiklenmediğinde sorunun sayfa kodunda mı, GTM eşleştirmesinde mi olduğunu hızlıca ayırabilirsiniz.

Kaynaklar​



Sık sorulan sorular​


DataLayer sayfa yenilenince verileri kalıcı olarak saklar mı?​


Hayır. DataLayer sayfanın çalışma bağlamındaki JavaScript verisidir. Sayfa yenilendiğinde veya yeni bir sayfaya geçildiğinde gerekli bilgiler yeniden oluşturulmalıdır; kalıcı saklama gerekiyorsa bunun için ayrı bir uygulama mekanizması gerekir.

Tek bir sayfada birden fazla olay gönderebilir miyim?​


Evet. Her işlem gerçekleştiğinde ayrı bir push() çağrısı yapabilirsiniz. Olay adlarını ve alanlarını tutarlı tutun; aynı işlemin sayfa yenileme, tekrar gönderim veya yeniden deneme nedeniyle yanlışlıkla birden fazla raporlanmadığını ayrıca kontrol edin.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.