Metrica

Faydalı bağlantılar

E-Ticaret

İpucu. JavaScript API'siyle çalışmak için HTML ve JavaScript'le çalışma tecrübesine sahip olmak gerekir. Bu konuda tecrübeniz yoksa sitenizin geliştiricisine veya yöneticisine başvurmanızı öneririz.

Yandex.Metrica, e-ticaretle ilgili veri toplamayı ve analiz etmeyi sağlar.

Dikkat! Daha önce sipariş parametrelerinin aktarımı için kullanılan ve ön belirlenmiş ziyaret parametre setine dayalı olan yöntem geriye dönük olarak hala desteklenmekle birlikte artık çok eski sayılır ve dolayısıyla bunun kullanılması önerilmez. Yandex.Metrica'nın E-Ticaret bileşeni eskisine göre daha çok sayıda verinin takip edilmesine olanak verir ve bu verilerin analizi için daha kullanışlı ve gelişmiş araçlar sağlar.

E-Ticaret'i çalıştırma

E-Ticaret'i çalıştırmak için şu eylemleri yapın:

  1. Ayarlar (Sayaç kodu) bölümüne geçin ve E-Ticaret verilerinin Metrica'ya aktarımı seçeneğini etkinleştirin. Böylelikle sayaç koduna, içine verilerin toplanacağı özel bir dataLayer veri taşıyıcısı eklenecek (varsayılan).

  2. Ürün özellikleri, “Sepete koy” butonu vb. gibi, ürünler ve siparişler hakkında bilgi içeren site sayfalarındaki sayaç kodunu güncelleyin veya sayaç kodu eksikse bunu ekleyin.
  3. DataLayer veri taşıyıcısını site sayfalarına ekleyin ve ürün işlemleri hakkındaki verilerin Yandex.Metrica'ya aktarımı için gerekli ayarlar yapın.

Veri sunumu ve aktarımı

E-Ticaret ortamında her bir ürün, üzerinde belirli işlemlerin yapıldığı birer objedir. Ürünün detaylı açıklamasının görüntülenmesi veya sepete konması bu eylemlere örnektir. Bu veriler, ilgili eylem tanımlayıcısını ve bu eylemin yapıldığı ürünlerin açıklamalarının listesini içeren JavaScript objeleri şeklinde aktarılır. JavaScript API'siyle bağlantılı olarak bu tür objelere E-Ticaret objeleri diyelim.

Verilerin E-Ticaret objeleri olarak Yandex.Metrica servisine aktarılması için bunları push yöntemiyle özel bir JavaScript dizisine yerleştirmek gerekir. Bu diziye veri taşıyıcısı diyelim.

Veri taşıyıcısı, global ad alanında bulunmalı ve adı sayaç başlatma işlemi sırasında belirtilen ad ile aynı olmalıdır. Veri taşıyıcısının adı dataLayer ise veya çalıştırılan Metrica sayacının ecommerce parametresinin değeri true ise veri taşıyıcılığının window.dataLayer dizisi tarafından üstlendiği varsayılır.

<script type="text/javascript">
window.dataLayer = window.dataLayer || [];
</script>
...
<script type="text/javascript">
window.dataLayer.push ({...});
</script>

Veri taşıyıcısının ismi ve buna yerleştirilen E-Ticaret objelerinin yapısı, Google Analytics Enhanced Ecommerce'teki benzer varlıklara denk gelir. Böylece Google Analytics Enhanced Ecommerce'e veri gönderimi ayarlamanın yanı sıra ayrıca Yandex.Metrica'da E-Ticaret özelliğini de çalıştırdıysanız Yandex.Metrica da ilgili veriler toplanmaya başlar.

E-Ticaret objesinin şekli şöyle görünür:

window.dataLayer.push({
    "ecommerce
[no-highlight[

Object

Zorunlu taşıyıcı alan

]no-highlight]
": { "currencyCode
[no-highlight[

String

ISO 4217‘ye göre döviz kodu (3 harf).

Desteklenen döviz türlerinin listesi
  • TRY: Türk Lirası
  • EUR: Euro
  • USD: ABD dolar
  • GBP: İngiliz sterlini
  • AUD: Avustralya Doları
  • CAD: Kanada Doları
  • RUB: Rus Rublesi
  • UAH: Ukrayna Hryvniası
  • BYN: Belarus Rublesi
  • CNY: Çin Yuanı
  • KZT: Kazakistan Tengesi
  • LVL: Letonya Latsı
  • MDL: Moldova Ley
  • CHF: İsviçre Frangı
  • THB: Tayland Bahtı
  • TMT: Türkmenistan Manatı
  • YND: Özel kredi birimleri

Başka türlü döviz bilgileri aktarıldığında ilgili tutar ve para birimi değerleri 0 olarak aktarılacaktır.

]no-highlight]
": "RUB", "<actionType>
[no-highlight[

<actionType> yerine konan alan adı, ürün setiyle yapılan eylemin tanımlayıcısıdır.

Olası değerler:

  • detail: Ürünün tam açıklamasının (ürün kartının) görüntülenmesi,
  • add: Ürünün sepete konması,
  • remove: Ürünün sepetten çıkarılması,
  • purchase: Satın alma işlemi
]no-highlight]
" : { "actionField
[no-highlight[

Object

<actionField> şeklindeki bir obje. Yapılan eylemi açıklayan ek veriler.

Eylem sadece satın alma (<actionType> = purchase) ise işlenir

]no-highlight]
" : <actionField>, "products
[no-highlight[

Array

Belirtilen eylemin yapıldığı ürünlerin açıklama listesi. Ürün açıklamaları, <productFieldObject> şeklindeki objelerdir

]no-highlight]
" : [<productFieldObject>, <productFieldObject>, ...] } } });
AlanTürüAçıklama
ecommerce *

Object

Zorunlu taşıyıcı alan

currencyCode

String

ISO 4217'ye göre döviz kodu (3 harf).

Desteklenen döviz türlerinin listesi
  • TRY: Türk Lirası
  • EUR: Euro
  • USD: ABD dolar
  • GBP: İngiliz sterlini
  • AUD: Avustralya Doları
  • CAD: Kanada Doları
  • RUB: Rus Rublesi
  • UAH: Ukrayna Hryvniası
  • BYN: Belarus Rublesi
  • CNY: Çin Yuanı
  • KZT: Kazakistan Tengesi
  • LVL: Letonya Latsı
  • MDL: Moldova Ley
  • CHF: İsviçre Frangı
  • THB: Tayland Bahtı
  • TMT: Türkmenistan Manatı
  • YND: Özel kredi birimleri

Başka türlü döviz bilgileri aktarıldığında ilgili tutar ve para birimi değerleri 0 olarak aktarılacaktır.

<actionType> *

<actionType> yerine konan alan adı, ürün setiyle yapılan eylemin tanımlayıcısıdır.

Olası değerler:

  • detail: Ürünün tam açıklamasının (ürün kartının) görüntülenmesi,
  • add: Ürünün sepete konması,
  • remove: Ürünün sepetten çıkarılması,
  • purchase: Satın alma işlemi
actionField

Object

<actionField> şeklindeki bir obje. Yapılan eylemi açıklayan ek veriler.

Eylem sadece satın alma (<actionType> = purchase) ise işlenir

products *

Array

Belirtilen eylemin yapıldığı ürünlerin açıklama listesi. Ürün açıklamaları, <productFieldObject> şeklindeki objelerdir

* Bu parametre zorunludur

Ürün hakkındaki veriler

Belirli bir ürünün özelliklerini açıklayan obje.

Ürünü açıklayan objenin yapısı <productFieldObject> olarak adlandırılır.

Tablo 1. Obje alanları

AlanTürüAçıklama
id *
[no-highlight[

Belirtilmesi zorunlu olan öğe: id veya name

]no-highlight]

String

Ürün tanımlayıcısı. Örnek: SKU.

Belirtilmesi zorunlu olan öğe: id veya name

name *
[no-highlight[

Belirtilmesi zorunlu olan öğe: name veya id

]no-highlight]

String

Ürün adı. Örnek: "Tişört"

Belirtilmesi zorunlu olan öğe: name veya id

brand

String

Ürünle ilgili bir ticari marka Örnek: Yandex

category

String

Ürünün ait olduğu kategori

Desteklenen kategoriler hiyerarşisi 5 yuvalanma seviyesine kadardır. Seviye ayırıcısı olarak kullanılan simge: / Örnek: "Giyim/Erkek giyimi/Tişörtler"

coupon

String

Ürünle ilgili promosyon kodu. Örnek: "PARTNER_SITE_15"

position

Number

Ürünün listedeki pozisyonu. Örnek: 2

price

Number

Ürünün birim fiyatı

quantity

Integer

Ürünün birim sayısı

variant

String

Ürün çeşidi. Örnek: "Kırmızı"

Eylem verileri

Ürünle veya ürün setiyle yapılan eylemler hakkında veriler içeren obje.

Eylem sadece satın alma (<actionType> = purchase) ise işlenir

Eylemi açıklayan objenin yapısı <actionField> olarak belirtilir.

Tablo 2. Obje alanları

AlanTürüAçıklama
id *
[no-highlight[

Alanın doldurulması zorunludur.

]no-highlight]

String

Satın alma işlemi tanımlayıcısı.

Alanın doldurulması zorunludur.

Örnek: TRX#54321

coupon

String

Bir bütün olarak satın alma işlemiyle (alınan ürünlerle) ilgili promosyon kodu

goal_id

String

Hedefin sayısal tanımlayıcısı (ID'si). Söz konusu eylem hedeflenen bir eylem olduğu takdirde belirtilir.

Hedef, JavaScript eylemi türündeki bir koşulla belirlenmelidir.

Hedefin tanımlayıcısı (ID'si) nasıl öğrenilir?
revenue

Number

Elde edilen gelir.

Özel olarak belirtilmediği durumlarda işlem çerçevesinde satın alınan tüm ürünlerin fiyat toplamı olarak otomatik hesaplanır.

Örnekler

Tüm örnekler sayacın E-Ticaret çalıştırılmış olarak başlatıldığı ve verilerin window.dataLayer taşıyıcısı üzerinden aktarıldığı varsayımlarıyla verilmektedir.

Ürünün tam açıklamasını görüntüleme

dataLayer.push({
    "ecommerce": {
        "detail": {
            "products": [
                {
                    "id": "P15432",
                    "name" : "Tişört",
                    "price": 477.60,
                    "brand": "Yandex / Яndex",
                    "category": "Giyim/Erkek giyimi/Tişörtler",
                    "variant" : "Kırmızı"
                },
                {
                    "name": "Yandex rozeti",
                    "price": 50,
                }
            ]
        }
    }
});

Ürünü sepete koyma

dataLayer.push({
    "ecommerce": {
        "add": {
            "products": [
                {
                    "id": "43521",
                    "name": "Yandex çantası",
                    "price": 654.32,
                    "brand": "Yandex / Яndex",
                    "category": "Aksesuarlar/Çantalar",
                    "quantity": 2
                }
            ]
        }
    }
});

Ürünü sepetten çıkarma

dataLayer.push({
    "ecommerce": {
        "remove": {
            "products": [
                {
                    "id": "15243",
                    "name": "Mobil telefon ekranı için Yandex silgi seti",
                    "category": "Mobil telefon aksesuarları"
                }
            ]
        }
    }
});

Satın alma

dataLayer.push({
    "ecommerce": {
        "purchase": {
            "actionField": {
                "id" : "TRX987",
                "goal_id" : "1234567"
            },
            "products": [
                {
                    "id": "25341",
                    "name": "Yandex erkek kazağı",
                    "price": 1345.26,
                    "brand": "Yandex / Яndex",
                    "category": "Giyim/Erkek giyimi/Kazaklar",
                    "variant" : "Turuncu"
                },
                {
                    "id": "25314",
                    "name": "Yandex bayan kazağı",
                    "price": 1543.62,
                    "brand": "Yandex / Яndex",
                    "category": "Giyim/Bayan giyimi/Kazaklar",
                    "variant" : "Beyaz",
                    "quantity": 3
                }
            ]
        }
    }
});