Universal Analytics (UA), 1 Temmuz 2023'te kullanımdan kaldırılacaktır. Bu durumda, veri işleme durdurulur. Analytics 360 mülkleri 1 Ekim 2023'ten itibaren çalışmayacaktır. Google Analytics 4'e geçin.

Tek Sayfalık Uygulama Ölçümü

Bu kılavuzda, geleneksel tam sayfa yüklemeleri olmadan içeriği dinamik olarak yüklenen sitelerde sayfa etkinliğini ölçmek için analytics.js'nin nasıl kullanılacağı açıklanmaktadır.

Genel bakış

Tek Sayfalık Uygulama (SPA), ilk sayfa yüklemesinde sitede gezinmek için gereken tüm kaynakları yükleyen bir web uygulaması veya web sitesidir. Kullanıcı bağlantıları tıklayıp sayfayla etkileşimde bulunurken sonraki içerik dinamik olarak yüklenir. Uygulama, geleneksel gezinme emülasyonunu taklit etmek için genellikle adres çubuğundaki URL'yi günceller ancak hiçbir zaman tam sayfa isteği yapılmaz.

Snippet kodu, kullanıcılar her yeni sayfa yükleyişinde çalıştırıldığından varsayılan Google Analytics etiketi, geleneksel web siteleriyle uyumlu çalışır. Ancak, sitenin yeni sayfa içeriğini tam sayfa yükleme yerine dinamik olarak yüklediği tek sayfalık uygulamalarda, analytics.js snippet kodu yalnızca bir kez çalışır. Bu, yeni içerik yüklenirken sonraki (sanal) sayfa görüntülemelerinin manuel olarak yakalanması gerektiği anlamına gelir.

Sanal sayfa görüntülemelerini izleme

Uygulamanız içeriği dinamik olarak yüklediğinde ve adres çubuğundaki URL'yi güncellediğinde izleyicinizde depolanan veriler de güncellenir.

İzleyiciyi güncellemek için set komutunu kullanın ve yeni page değerini girin:

ga('set', 'page', '/new-page.html');

Yeni sayfa değerini belirlemenizin ardından, daha sonra gönderilen tüm isabetler bu yeni değeri kullanır. Sayfa görüntülemeyi kaydetmek için izleyiciyi güncelledikten hemen sonra bir sayfa görüntüleme isabeti gönderin.

ga('set', 'page', '/new-page.html');
ga('send', 'pageview');

Teknik olarak, sayfa görüntüleme isabetlerine ilişkin send komutu, üçüncü parametre olarak isteğe bağlı bir page alanını kabul etse de, tek sayfalık uygulamaların ölçülmesi için page alanının bu şekilde geçirilmesi önerilmez. Bunun nedeni, send komutu aracılığıyla aktarılan alanların izleyici üzerinde ayarlanmamasıdır. Yalnızca geçerli isabet için geçerlidir. İzleyicinin güncellenmemesi, uygulamanız sayfa görüntüleme olmayan isabetler (ör.etkinlikler veya sosyal etkileşimler) gönderirse sorunlara yol açar. Bunun nedeni, bu isabetlerin izleyici tarafından oluşturulduğunda page değeriyle ilişkilendirilmesidir.

Aynı kaynak için birden fazla URL işleme

Bazı STP'ler, içeriği dinamik olarak yüklerken yalnızca URL'nin karma bölümünü günceller. Bu uygulama, birçok farklı sayfa yolunun aynı kaynağa işaret ettiği durumlara yol açabilir. Bu gibi durumlarda, genellikle standart bir URL seçmek ve bu page değerini Google Analytics'e göndermek en iyisidir.

Örneğin, "Hakkımızda" sayfasına aşağıdaki URL'lerden herhangi biriyle ulaşılabilen bir web sitesi düşünün:

  • /about.html
  • /#about.html
  • /home.html#about.html

Yinelenmeleri önlemek için en iyi yöntem bu sayfa görüntülemelerinin tümünü /about.html olarak yakalamaktır.

Dikkat edilmesi gereken önemli noktalar

Doküman yönlendireni güncelleme

create komutunu kullanarak bir izleyici nesnesi oluşturduğunuzda, document.referrer değeri izleyicinin referrer alanında depolanır. Tam sayfa yüklemelerini kullanmayan tek sayfalık uygulama bağlamında referrer alanı her zaman aynı kalır.

Bununla birlikte, sayfa görüntüleme isabetleri göndermeden önce yönlendiren alanını manuel olarak güncellemeniz gerekmez. Google Analytics doğru gezinme yolunu otomatik olarak belirleyebilir.

Dokümanın konumunu güncelleme

İzleyicinin referrer alanı için document.referrer kullandığı gibi, URL'nin sonuna eklenen sorgu parametreleri biçimindeki kampanya verilerini veya diğer meta verileri içerebilen location alanı için document.location değerini de kullanır.

Google Analytics'in kontrol ettiği kampanya alanlarından veya diğer meta verilerden herhangi birini güncellemek, mevcut oturumun sona ermesine ve yeni bir oturumun başlamasına neden olabilir. Bu sorunu önlemek için, tek sayfalık bir uygulamada sanal sayfa görüntülemelerini ölçerken location alanını güncellemeyin. Bunun yerine page alanını kullanın.

Yeni izleyici oluşturma

JavaScript izleme snippet'inin geleneksel web siteleri için ne yaptığını taklit etmek amacıyla tek sayfalık uygulamada yeni izleyiciler oluşturmayın. Aksi takdirde, yukarıda açıklandığı gibi yanlış kampanya verilerinin yanı sıra yanlış bir yönlendiren de gönderilebilir.