Wix eCommerce: Entegrasyonlar, İzleme ve Ölçüm

Wix ve e-ticaret özelliği olan Wix eCommerce ile ilgili temel bilgiler vermeye çalıştığım Wix Nedir? başlıklı yazının devamı olarak, Wix'in Pazarlama ve Seo başlığı altında yer alan Pazarlama Entegrasyonları bölümünde sunduğu Google Analytics 4 (GA4), Google Tag Manager (GTM) ve Ads entegrasyonlarına değinmeye çalışacağım.

AA

Wix aracılığı ile bir websitesi oluşturulduğunda ilgili web sitesinde gerçekleştirilen ziyaretçi etkinlikleri Wix'in sunduğu çeşitli entegrasyon çözümleri aracılığı ile izlenebilmektedir. Bu yazıda bahsi geçecek çözümler her ne kadar Google Ads, GA4 ve GTM olacak olsa da hem doğrudan hem de uygulama marketi aracılığı ile entegrasyon çeşitliliği artırılabilmektedir.

Wix - Integrations

Pazarlama Entegrasyonları bölümündeki entegrasyon seçenekleri Özel Kod alanına eklenen widget'lar olarak ele alınmaktadır ve yine bu bölüm üzerinden yönetilebilmektedirler.

Wix - Custom Code

Öncelikle doğrudan veri akışı sağlayan entegrasyon başlıklarına bakalım.

Google Analytics 4 (GA4) Entegrasyonu

Pazarlama Entegrasyonları bölümünde yer alan Google Analytics entegrasyon seçeneği aracılığı ile Measurement ID girilerek kolay bir şekilde ilgili GA4 mülküne veri akışı sağlanabilir. Bağlantı etkinleştirildiği an itibariyle page_view, view_item_list, select_content, view_item, add_to_cart, remove_from_cart, begin_checkout, ödeme adımında checkout_progress, gözden geçirme adımına add_payment_info ve satın alma işlemi tamamlandığında purchase etkinlikleri iletilir.

Wix - Google analytics 4

E-ticaret etkinlikleri (view_item_list, view_item, add_to_cart, remove_from_cart, begin_checkout, purchase) kapsamında iletilen parametreler şu şekildedir:

{
    currency: "TRY"
    event_action: "Add to Cart"
    event_category: "Enhanced Ecommerce - Stores"
    event_label: "Bu bir ürün"
    items: [{
        category: "All Products"
        id: "73fe33fb-4a89-4b12-916d-83f0ef347bee"
        name: "Bu bir ürün"
        price: 20
        quantity: 1
        sku: "364215375135191"
    }]
}

Genel olarak değerlendirildiğinde temel GA4 veri akışı sağlandığı görülmektedir. Ancak, value değerinin etkinlik parametresi olarak iletilmemesi etkinliklerin dönüşüm olarak işaretlenmesi ve takibini güç hale getirebilmektedir. Ek olarak, ürün fiyatı indirim olması durumunda indirim uygulanan değeri alır, ürün düzeyinde ayrıca bir discount parametresi yer almamaktadır. purchase etkinliğinde ise tax ve shipping yer almamakta.

Google Ads Entegrasyonu

Google Ads entegrasyonu Google Analytics 4 entegrasyonu ile paralel etkinlik akışına sahiptir. Entegrasyon üzerinden iletilen etkinliklerle ayrıca bir dönüşüm etiketi atanamamaktadır.

Wix - Google Ads Remarketing
Wix - Google Ads

Dönüşüm tanımlama işlemi için ilgili etkinliklerin GA4 üzerinden içe aktarılması gerekir1 2. Dönüşüm etiketi tanımlı bir veri iletimi için özel kod ekleme alanları kullanılabilir3 4.

Wix - Custom Codes

Özel kod ekleme işlemi Ayarlar altında Özel Kod bölümü veya daha ileri düzeyde Editor aracılığı ile gerçekleştirilebilir.

Consent yönetiminde, ilgili özel kodlar kategorilerle ilişkilendirilebilmektedir.

Wix - Content Management

İletilen etkinlikler ve parametreleri aşağıdaki gibidir.

Google Tag Manager (GTM) Entegrasyonu

Google Tag Manager (GTM) entegrasyonunun sağlanması durumunda, ilgili e-ticaret etkinlikleri Universal Analytics (UA) formatında iletilmektedir5.

Wix - Google Tag Manager

Etkinlikler Google Analytics 4 entegrasyonuna paralel olarak sayfa görüntüleme için Pageview ve e-ticaret etkinliklerinde productImpression, productClick, viewContent, addToCart, checkout, purchase ve ödeme adımlarında ise (ödeme işlemi ve gözden geçirme) için checkoutOption etkinlikleri iletilir.

Ödeme onay ile birlikte iletilen purchase etkinliğinde tax ve shipping bilgileri de yer almaktadır.

İndirim tutarı konusu ise GA4 ile benzer şekilde, indirimli tutar üzerinden iletilir ve purchase harici dataLayer içeriklerinde, event düzeyinde value ve currency bilgileri yer almaz. Bu tür durumlarda, GTM içerisinde ayrı bir JavaScript işlemi ile ilgili bilgilerin ürün içerisinden edinilerek event düzeyinde aktarılması uygun olacaktır.

İlgili dataLayer içeriği event'ler bağlamında aşağıdaki gibidir.

dataLayer işlemlerinde değişken (variable) kullanımına ve map'leme işlemlerinde, iletilen dataLayer içeriklerinde ecommerce resetleme olmadığı ve bu tür durumlarda bir önceki değişken değeri iletilebileceği için ayrıca dikkat edilmesi gerekir6.

dataLayer.push({ecommerce:null});

GTM aracılığı ile Ads ve GA4 etkinliklerinin kurulumunda dataLayer seçimi ile ilerlenebilir7. Ancak, ilgili etkinlik isimlerinin standartlaştırılması gibi ihtiyaçların doğması durumunda etkinlik isimlerine Lookup Table veya harici bir JavaScript ile müdahale edilmesi gerekebilir.

Wix - Google Tag Manager

Özel Kod ve Event Yönetimi

Var olan etkinlikler veya özel ek etkinlikler için (modal kullanımı, farklı parametrelerin iletimi, eksik e-ticaret etkinliklerinin iletimi, vb.) durumlarda Velo by Wix aracılığı ile customEvent yapıları oluşturulabilmekte. Elbette öncesinde ihtiyaca yönelik app çözümlerinin olup olmadığının kontrol edilesi daha uygun olacaktır8.

Wix eCommerce etkinliklerinin doğru bir şekilde izlenmesi ve pek çok farklı ölçüm ve izleme aracına iletilmesi ile ilgili Wix eCommerce çözümüne göz atabilirsiniz. Detaylar için tıklayın!

Uygun bir çözümün edinilememesi durumunda, Editor bölümünde yer alan back-end ve front-end seçenekleri kullanılabilmekte. Node.js paketlerinin kullanıldığı JavaScript kodları aracılığı ile ilgili paketler çalışma alanına dahil edilerek tüm veri alanları ile entegre olunabilmekte9.

Wix - Ecommerce Tracking

Örnek bir customEvent tanımı için aşağıdaki kod parçacığı incelenebilir 10 11 12.

import wixWindowFrontend from 'wix-window-frontend';
import wixLocationFrontend from 'wix-location-frontend';

$w.onReady(function () {
    // Define reusable functions
    const trackEvent = (eventCategory, eventAction, ecommerce, page) => {
        const customEventObject = {
            eventCategory: eventCategory,
            eventAction: eventAction,
            ecommerce: ecommerce,
            page: page,
        };

        wixWindowFrontend.trackEvent("CustomEvent", customEventObject);
        console.log(customEventObject);
    };

    const trackPageView = () => {
        const pageObj = {
            eventCategory: "dnm_initial",
            eventAction: "dnm_page_view",
            page: {
                referrer: wixWindowFrontend.referrer,
                location: wixLocationFrontend.url,
                query: wixLocationFrontend.query,
                prefix: wixLocationFrontend.prefix,
                path: wixLocationFrontend.path
            }
        };

        trackEvent(pageObj.eventCategory, pageObj.eventAction, null, pageObj.page);
    };

    const trackViewItem = (product) => {
        const currency = product.currency;
        const productId = product._id;
        const productName = product.name;
        const productPrice = product.price;
        const productQuantity = 1; // Set the quantity as needed
        const productDiscountedPrice = product.discountedPrice || 0; // Assuming discountedPrice is available
        const productDiscount = product.discount?.value || 0; // Assuming discountedPrice is available
        const productSlug = product.slug;
        const collections = product.collections || '';
        const productVariant = product.variants[0].variant.sku;

        const ecommerce = {
            currency: currency,
            value: productDiscountedPrice * productQuantity,
            items: [{
                item_id: productId,
                item_name: productName,
                item_price: productPrice,
                quantity: productQuantity,
                currency: currency,
                item_variant: productVariant,
                item_discounted_price: productDiscountedPrice,
                item_category: collections,
                discount: productDiscount,
                slug: productSlug
            }]
        };

        trackEvent("dnm_ecommerce", "dnm_view_item", ecommerce);
        trackEvent("dnm_ecommerce", "reset", null);
    };
});

Kodun çıktısı olarak aşağıdaki örnek görsellere göz atılabilir.

Wix - view_item
Wix - page_view
Wix - eCommerce Reset

customEvent tanımları dataLayer olarak iletilir. Bu içeriğe ayrıca visitorId parametresi iliştirilmektedir.

Front-end veya back-end kodlarının yanı sıra masterPage.js dosyası üzerinden tüm sayfalarda kullanılabilecek kod parçacıkları da tema tarafında işleme alınabilmektedir.

Wix Data API veri sorguları ve performans değişimi ayrıca raporlar İzleme bölümü üzerinden takip edilebilmektedir.

Wix - masterPage

Sonuç Olarak

GA4 ve Ads entegrasyonları genel ihtiyaçlara kolay bir şekilde çözüm sağlamakta olsa da özelleştirilmiş kullanımlara ve ek servis entegrasyonları söz konusu olduğunda sınırlı kalabilmektedir. Bu tür durumlarda GTM aracılığı ile ilerlenebilir. Elbette tema yapısına bağlı olarak GTM kullanımında da bazı sınırlandırmalarla karşılaşmak mümkün.

Ek parametreler ve etkinlikler için bu aşamada Editor aracılığı ile ihtiyaç duyulan veri akışları da GTM'e ve elbette diğer servislere doğrudan ya da dolaylı olarak iletilebilir veya farklı servislerden veriler edinilerek Wix üzerinden kullanıma alınabilir.