افزونه تجارت الکترونیک پیشرفته برای analytics.js اندازه گیری تعاملات کاربر با محصولات در وب سایت های تجارت الکترونیک را در سراسر تجربه خرید کاربر، از جمله: نمایش محصول، کلیک محصول، مشاهده جزئیات محصول، افزودن یک محصول به سبد خرید، شروع پرداخت فرآیند، معاملات و بازپرداخت.
مهاجرت و سازگاری با افزونه تجارت الکترونیک (ecommerce.js)
اگر قبلاً اندازهگیری تجارت الکترونیک را اجرا کردهاید و میخواهید از تجارت الکترونیک پیشرفته استفاده کنید، دو گزینه اصلی وجود دارد:
از یک ملک جدید استفاده کنید
میتوانید یک ردیاب اضافی برای یک ویژگی جدید ایجاد کنید و تجارت الکترونیک پیشرفته را برای ویژگی جدید تگ/فعال کنید. برای جزئیات در مورد نحوه ارسال داده به چندین ویژگی از یک صفحه ، به کار با چندین شی ردیابی مراجعه کنید.
مهاجرت یک ملک موجود
برای انتقال از افزونه تجارت الکترونیک به افزونه تجارت الکترونیک پیشرفته، کاربران فعلی analytics.js باید کدهای تجارت الکترونیک پیشرفته را حذف و جایگزین مراجع کنند.
اگر در حال حاضر از ga.js استفاده می کنید، باید قبل از استفاده از افزونه تجارت الکترونیک پیشرفته، ابتدا به analytics.js مهاجرت کنید .
دادههای تراکنش و مواردی که قبلاً با استفاده از افزونه ecommerce.js جمعآوری شدهاند تحت تأثیر این انتقال قرار نمیگیرند و در ویژگیها و نمایههایی که در ابتدا به آنها ارسال شدهاند در دسترس باقی میمانند.
انواع داده ها و اقدامات تجارت الکترونیک پیشرفته
انواع مختلفی از داده های تجارت الکترونیک وجود دارد که می توانید ارسال کنید:
داده های برداشت
نشان دهنده اطلاعات مربوط به محصولی است که مشاهده شده است. به آن impressionFieldObject
گفته می شود و حاوی مقادیر زیر است:
کلید | نوع ارزش | ضروری | شرح |
---|---|---|---|
id | متن | *آره | شناسه محصول یا SKU (به عنوان مثال P67890). * یکی از |
name | متن | *آره | نام محصول (مثلا تی شرت اندروید). * یکی از |
list | متن | خیر | لیست یا مجموعه ای که محصول به آن تعلق دارد (مثلاً نتایج جستجو) |
brand | متن | خیر | نام تجاری مرتبط با محصول (به عنوان مثال گوگل). |
category | متن | خیر | دسته ای که محصول به آن تعلق دارد (مثلاً پوشاک). از / به عنوان یک جداکننده برای تعیین حداکثر 5 سطح سلسله مراتب استفاده کنید (مانند پوشاک / مردانه / تی شرت). |
variant | متن | خیر | نوع محصول (به عنوان مثال مشکی). |
position | عدد صحیح | خیر | موقعیت محصول در یک لیست یا مجموعه (مثلاً 2). |
price | عدد | خیر | قیمت یک محصول (به عنوان مثال 29.20). |
اطلاعات محصول
دادههای محصول نشاندهنده محصولات فردی است که مشاهده شده، به سبد خرید اضافه شدهاند، و غیره. به عنوان productFieldObject
نامیده میشود و حاوی مقادیر زیر است:
کلید | نوع ارزش | ضروری | شرح |
---|---|---|---|
id | متن | *آره | شناسه محصول یا SKU (به عنوان مثال P67890). * یکی از شناسه یا |
name | متن | *آره | نام محصول (مثلا تی شرت اندروید). * یکی از شناسه یا |
brand | متن | خیر | نام تجاری مرتبط با محصول (به عنوان مثال گوگل). |
category | متن | خیر | دسته ای که محصول به آن تعلق دارد (مثلاً پوشاک). از / به عنوان یک جداکننده برای تعیین حداکثر 5 سطح سلسله مراتب استفاده کنید (مانند پوشاک / مردانه / تی شرت). |
variant | متن | خیر | نوع محصول (به عنوان مثال مشکی). |
price | عدد | خیر | قیمت یک محصول (به عنوان مثال 29.20). |
quantity | عدد صحیح | خیر | مقدار یک محصول (به عنوان مثال 2). |
coupon | متن | خیر | کد کوپن مرتبط با یک محصول (به عنوان مثال SUMMER_SALE13). |
position | عدد صحیح | خیر | موقعیت محصول در یک لیست یا مجموعه (مثلاً 2). |
داده های تبلیغاتی
نشان دهنده اطلاعات تبلیغاتی است که مشاهده شده است. به یک promoFieldObject
ارجاع داده می شود و حاوی مقادیر زیر است:
کلید | نوع ارزش | ضروری | شرح |
---|---|---|---|
id | متن | *آره | شناسه تبلیغ (به عنوان مثال PROMO_1234). * یکی از |
name | متن | *آره | نام تبلیغات (به عنوان مثال فروش تابستانی). * یکی از |
creative | متن | خیر | خلاقیت مرتبط با تبلیغات (به عنوان مثال summer_banner2). |
position | متن | خیر | موقعیت خلاق (به عنوان مثال banner_slot_1). |
داده های اقدام
نشان دهنده اطلاعات مربوط به یک اقدام مرتبط با تجارت الکترونیک است که انجام شده است. به آن actionFieldObject
گفته می شود و حاوی مقادیر زیر است:
کلید | نوع ارزش | ضروری | شرح |
---|---|---|---|
id | متن | *آره | شناسه تراکنش (به عنوان مثال T1234). * اگر نوع اقدام |
affiliation | متن | خیر | فروشگاه یا وابستگی که این تراکنش از آن انجام شده است (مثلاً فروشگاه Google). |
revenue | عدد | خیر | کل درآمد یا کل کل مرتبط با تراکنش را مشخص می کند (مثلاً 11.99). این مقدار ممکن است شامل هزینههای حمل و نقل، مالیات یا سایر تنظیمات مربوط به کل درآمد باشد که میخواهید به عنوان بخشی از محاسبات درآمد خود لحاظ کنید. |
tax | عدد | خیر | کل مالیات مربوط به معامله. |
shipping | عدد | خیر | هزینه حمل و نقل مرتبط با معامله. |
coupon | متن | خیر | کوپن معامله با معامله بازخرید شد. |
list | متن | خیر | لیستی که محصولات مرتبط به آن تعلق دارند. اختیاری. |
step | عدد صحیح | خیر | عددی که نمایانگر مرحله ای از فرآیند پرداخت است. اختیاری در اقدامات "تسویه حساب". |
option | متن | خیر | فیلد اضافی برای اقدامات checkout و checkout_option که میتواند اطلاعات گزینه را در صفحه پرداخت، مانند روش پرداخت انتخابی، توصیف کند. |
محصولات و اقدامات ترویجی
اقدامات نحوه تفسیر محصول و داده های تبلیغاتی را که به Google Analytics ارسال می کنید مشخص می کند.
عمل | شرح |
---|---|
click | کلیک بر روی یک محصول یا پیوند محصول برای یک یا چند محصول. |
detail | نمایی از جزئیات محصول |
add | افزودن یک یا چند محصول به سبد خرید. |
remove | یک یا چند محصول را از سبد خرید حذف کنید. |
checkout | شروع فرآیند پرداخت برای یک یا چند محصول. |
checkout_option | ارسال مقدار گزینه برای یک مرحله پرداخت مشخص. |
purchase | فروش یک یا چند محصول. |
refund | بازپرداخت یک یا چند محصول. |
promo_click | یک کلیک روی یک تبلیغ داخلی |
پیاده سازی
بخشهای زیر نحوه پیادهسازی افزونه تجارت الکترونیک پیشرفته را برای اندازهگیری فعالیت تجارت الکترونیک در وبسایت با کتابخانه analytics.js شرح میدهند.
افزونه تجارت الکترونیک را بارگیری کنید
برای کاهش اندازه کتابخانه analytics.js، تجارت الکترونیک پیشرفته در کتابخانه پیش فرض ارائه نشده است. در عوض به عنوان یک ماژول پلاگین ارائه شده است که باید قبل از استفاده بارگیری شود.
برای بارگیری افزونه تجارت الکترونیک پیشرفته، از دستور زیر استفاده کنید:
ga('require', 'ec');
این دستور باید بعد از ایجاد شی ردیاب خود و قبل از استفاده از هر یک از عملکردهای خاص تجارت الکترونیک پیشرفته اعمال شود.
ارسال داده های تجارت الکترونیک پیشرفته
پس از بارگیری، چند دستور جدید مخصوص تجارت الکترونیک پیشرفته به ردیاب پیشفرض اضافه میشوند و میتوانید ارسال دادههای تجارت الکترونیک را آغاز کنید.
- اندازه گیری فعالیت های تجارت الکترونیک
- اندازه گیری معاملات
- اندازه گیری بازپرداخت
- اندازه گیری فرآیند پرداخت
- اندازه گیری تبلیغات داخلی
اندازه گیری فعالیت های تجارت الکترونیک
یک پیادهسازی توسعهیافته تجارت الکترونیک، نمایش محصول و هر یک از اقدامات زیر را اندازهگیری میکند:
- روی لینک محصول کلیک می کند.
- مشاهده جزئیات محصول
- برداشت ها و کلیک های تبلیغات داخلی.
- افزودن/حذف یک محصول از سبد خرید.
- شروع فرآیند پرداخت برای یک محصول.
- خرید و بازپرداخت.
اندازه گیری تاثیرات
نمایش محصول با استفاده از دستور ec:addImpression
اندازه گیری می شود. جزئیات مربوط به محصول در impressionFieldObject
اضافه شده است.
به عنوان مثال، کد زیر نمایش یک محصول را در لیستی از نتایج جستجو اندازه گیری می کند:
ga('ec:addImpression', { // Provide product details in an impressionFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Search Results', // Product list (string).
'position': 1, // Product position (number).
'dimension1': 'Member' // Custom dimension (string).
});
impressionFieldObject
باید name
یا مقدار id
داشته باشد. همه مقادیر دیگر اختیاری هستند و نیازی به تنظیم ندارند.
اقدامات اندازه گیری
اقدامات با استفاده از دستور ec:addProduct
با یک productFieldObject
برای افزودن جزئیات محصول و دستور ec:setAction
برای مشخص کردن عملکرد در حال انجام اندازه گیری می شود.
به عنوان مثال، کد زیر کلیک بر روی پیوند محصول نمایش داده شده در لیستی از نتایج جستجو را اندازه گیری می کند:
ga('ec:addProduct', { // Provide product details in a productFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'position': 1, // Product position (number).
'dimension1': 'Member' // Custom dimension (string).
});
ga('ec:setAction', 'click', { // click action.
'list': 'Search Results' // Product list (string).
});
یک productFieldObject
باید name
یا مقدار id
داشته باشد. همه مقادیر دیگر اختیاری هستند و نیازی به تنظیم ندارند.
ترکیب برداشت ها و اقدامات
در مواردی که هم نمایش محصول و هم یک اقدام دارید، میتوانید این را در یک ضربه ترکیب و اندازهگیری کنید.
مثال زیر نحوه اندازه گیری نمای جزئیات محصول را با بخش محصولات مرتبط نشان می دهد:
// The impression from a Related Products section.
ga('ec:addImpression', { // Provide product details in an impressionFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Related Products', // Product list (string).
'position': 1 // Product position (number).
});
// The product being viewed.
ga('ec:addProduct', { // Provide product details in an productFieldObject.
'id': 'P67890', // Product ID (string).
'name': 'YouTube Organic T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'YouTube', // Product brand (string).
'variant': 'gray', // Product variant (string).
'position': 2 // Product position (number).
});
ga('ec:setAction', 'detail'); // Detail action.
اندازه گیری معاملات
با استفاده از دستور ec:setAction
و تنظیم نوع اقدام برای purchase
تراکنش را اندازه گیری کنید. جزئیات سطح تراکنش مانند درآمد کل، مالیات و حمل و نقل در یک actionFieldObject
ارائه شده است:
ga('ec:addProduct', { // Provide product details in an productFieldObject.
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'black', // Product variant (string).
'price': '29.20', // Product price (number).
'coupon': 'APPARELSALE', // Product coupon (string).
'quantity': 1 // Product quantity (number).
});
ga('ec:setAction', 'purchase', { // Transaction details are provided in an actionFieldObject.
'id': 'T12345', // (Required) Transaction id (string).
'affiliation': 'Google Store - Online', // Affiliation (string).
'revenue': '37.39', // Revenue (number).
'tax': '2.85', // Tax (number).
'shipping': '5.34', // Shipping (number).
'coupon': 'SUMMER2013' // Transaction coupon (string).
});
اگر نوع اقدام purchase
یا refund
باشد، یک actionFieldObject
باید یک مقدار id
داشته باشد. همه مقادیر دیگر اختیاری هستند و نیازی به تنظیم ندارند.
اندازه گیری بازپرداخت
برای بازپرداخت کل یک تراکنش، یک اقدام refund
تنظیم کنید و شناسه تراکنش را ارائه دهید:
// Refund an entire transaction.
ga('ec:setAction', 'refund', {
// Transaction ID is only required field for full refund.
'id': 'T12345'
});
اگر تراکنش منطبقی پیدا نشد، ضربه refund
پردازش نخواهد شد.
برای اندازهگیری بازپرداخت جزئی، یک اقدام refund
تنظیم کنید و شناسه تراکنش، شناسه(های) محصول و مقادیر محصول مورد بازپرداخت را مشخص کنید:
// Refund a single product.
ga('ec:addProduct', {
'id': 'P12345', // Product ID is required for partial refund.
'quantity': 1 // Quantity is required for partial refund.
});
ga('ec:setAction', 'refund', {
'id': 'T12345', // Transaction ID is required for partial refund.
});
استفاده از رویدادهای غیر تعاملی برای بازپرداخت
اگر باید دادههای بازپرداخت را با استفاده از یک رویداد ارسال کنید و رویداد بخشی از رفتار معمولی اندازهگیری شده در محل نیست (یعنی توسط کاربر شروع نشده است)، توصیه میشود یک رویداد غیرتعاملی ارسال کنید. این باعث می شود معیارهایی مانند نرخ پرش، زمان حضور در سایت و غیره تحت تأثیر رویداد قرار نگیرند. مثلا:
ga('send', 'event', 'Ecommerce', 'Refund', {'nonInteraction': 1});
اندازه گیری فرآیند پرداخت
برای اندازه گیری هر مرحله در فرآیند پرداخت:
- برای اندازه گیری هر مرحله از فرآیند پرداخت کد اضافه کنید.
- در صورت وجود، کدی را برای اندازهگیری گزینههای پرداخت اضافه کنید.
- با پیکربندی تنظیمات تجارت الکترونیک در بخش مدیریت رابط وب، به صورت اختیاری، نامهای مرحله کاربرپسند را برای گزارش قیف پرداخت تنظیم کنید.
1. اندازه گیری مراحل پرداخت
برای هر مرحله از فرآیند پرداخت خود، باید کد مربوطه را برای ارسال داده به Google Analytics پیاده سازی کنید:
step
فیلدبرای هر مرحله پرداخت که اندازه میگیرید، باید یک مقدار
step
درج کنید. این مقدار برای نگاشت اقدامات پرداخت شما به برچسب هایی که برای هر مرحله در تنظیمات تجارت الکترونیک پیکربندی کرده اید استفاده می شود.فیلد
option
اگر در زمان اندازهگیری مرحله، اطلاعات بیشتری در مورد مرحله پرداخت داده شده دارید، میتوانید فیلد
option
را با یک عملcheckout
تنظیم کنید تا این اطلاعات ثبت شود. به عنوان مثال، نوع پرداخت پیش فرض برای کاربر (به عنوان مثالVisa
).اندازه گیری مرحله پرداخت
برای اندازهگیری مرحله پرداخت، از
ec:addProduct
برای هر محصول استفاده کنید وec:setAction
نشاندهنده پرداخت است. در صورت امکان،ec:setAction
میتواند یکactionFieldObject
اضافی برای توصیف مرحله پرداخت با یکstep
و یکoption
انجام دهد.مثال زیر نحوه اندازهگیری مرحله اول فرآیند پرداخت را با یک محصول واحد و برخی اطلاعات اضافی در مورد نوع پرداخت نشان میدهد:
ga('ec:addProduct', { // Provide product details in an productFieldObject. 'id': 'P12345', // Product ID (string). 'name': 'Android Warhol T-Shirt', // Product name (string). 'category': 'Apparel', // Product category (string). 'brand': 'Google', // Product brand (string). 'variant': 'black', // Product variant (string). 'price': '29.20', // Product price (number). 'quantity': 1 // Product quantity (number). }); // Add the step number and additional info about the checkout to the action. ga('ec:setAction','checkout', { 'step': 1, 'option': 'Visa' });
2. اندازه گیری گزینه های پرداخت
گزینه های تسویه حساب به شما امکان می دهد اطلاعات بیشتری را در مورد وضعیت پرداخت اندازه گیری کنید. این در مواردی مفید است که یک مرحله پرداخت را در طول مشاهده صفحه اولیه اندازهگیری کردهاید، اما اطلاعات اضافی درباره همان مرحله پرداخت پس از تنظیم گزینه انتخاب شده توسط کاربر در دسترس است. به عنوان مثال، کاربر یک روش حمل و نقل را انتخاب می کند.
برای اندازه گیری یک گزینه پرداخت، از ec:setAction
برای نشان دادن یک checkout_option
استفاده کنید و شماره مرحله و توضیحات گزینه را درج کنید.
پس از کلیک کاربر برای رفتن به مرحله بعدی در فرآیند پرداخت، احتمالاً می خواهید این عمل را اندازه گیری کنید. مثلا:
// (On "Next" button click)
ga('ec:setAction', 'checkout_option', {'step': 2, 'option': 'FedEx'});
ga('send', 'event', 'Checkout', 'Option', {
hitCallback: function() {
// advance to next page
},
});
3. Checkout Funnel Configuration
به هر مرحله از فرآیند پرداخت شما می توان یک نام توصیفی داد که در گزارش ها استفاده می شود. برای پیکربندی این نامها، به بخش Admin در رابط وب Google Analytics مراجعه کنید، نمای (نمایه) را انتخاب کنید و روی تنظیمات تجارت الکترونیک کلیک کنید. دستورالعملهای راهاندازی تجارت الکترونیک را برای برچسبگذاری هر مرحله پرداختی که قصد اندازهگیری آن را دارید، دنبال کنید.
اندازه گیری تبلیغات داخلی
افزونه تجارت الکترونیک پیشرفته شامل پشتیبانی از اندازه گیری برداشت ها و کلیک های تبلیغات داخلی است، مانند بنرهایی که برای تبلیغ فروش در بخش دیگری از یک وب سایت نمایش داده می شوند.
برداشت های تبلیغاتی
نمایش تبلیغات داخلی معمولاً زمانی اندازه گیری می شود که صفحه بارگیری می شود و با استفاده از دستور ec:addPromo
با نمای اولیه صفحه ارسال می شود. مثلا:
ga('ec:addPromo', { // Promo details provided in a promoFieldObject.
'id': 'PROMO_1234', // Promotion ID. Required (string).
'name': 'Summer Sale', // Promotion name (string).
'creative': 'summer_banner2', // Creative (string).
'position': 'banner_slot1' // Position (string).
});
کلیک های تبلیغاتی
با تنظیم عمل promo_click
می توان کلیک روی تبلیغات داخلی را اندازه گیری کرد. مثلا:
// Identify the promotion that was clicked.
ga('ec:addPromo', {
'id': 'PROMO_1234',
'name': 'Summer Sale',
'creative': 'summer_banner2',
'position': 'banner_slot1'
});
// Send the promo_click action with an event.
ga('ec:setAction', 'promo_click');
ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');
به عنوان مثال، برای اندازهگیری یک صفحه جزئیات محصول با یک نمایش و یک کلیک تبلیغاتی، ابتدا دادههای محصول و نمایش را با نمای اولیه صفحه ارسال کنید، سپس دادههای کلیک تبلیغاتی را در یک رویداد جداگانه ارسال کنید:
// 1. Send product and impression data with pageview.
ga('ec:addProduct', {
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'position': 1, // Product position (number).
});
// The impression from the Related Products section.
ga('ec:addImpression', {
'id': 'P12345', // Product ID (string).
'name': 'Android Warhol T-Shirt', // Product name (string).
'category': 'Apparel/T-Shirts', // Product category (string).
'brand': 'Google', // Product brand (string).
'variant': 'Black', // Product variant (string).
'list': 'Related Products', // Product list (string).
'position': 1, // Product position (number).
});
ga('ec:setAction', 'detail'); // Detail action.
ga('send', 'pageview'); // Send the product data with initial pageview.
// 2. Send the promo click data when the promo click occurs.
// Call this function when promo click occurs.
function onPromoClick() {
ga('ec:addPromo', {
'id': 'PROMO_1234',
'name': 'Summer Sale',
'creative': 'summer_banner2',
'position': 'banner_slot1'
});
// Send the promo_click action with an event.
ga('ec:setAction', 'promo_click');
ga('send', 'event', 'Internal Promotions', 'click', 'Summer Sale');
}
یک promoFieldObject
باید name
یا مقدار id
داشته باشد. همه مقادیر دیگر اختیاری هستند و نیازی به تنظیم ندارند.
مثال کامل
قطعه کد زیر نشان می دهد که چگونه می توان چرخه عمر تجارت الکترونیک یک محصول را از برداشت اولیه تا تراکنش با استفاده از افزونه تجارت الکترونیک پیشرفته اندازه گیری کرد.
اندازه گیری تاثیر محصول
در این مثال، کاربر ابتدا محصول را در لیستی از نتایج جستجو مشاهده می کند. برای اندازه گیری این نمایش محصول، از دستور ec:addImpression
استفاده کنید و جزئیات محصول را در impressionFieldObject
ارائه دهید:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addImpression', {
'id': 'P12345', // Product details are provided in an impressionFieldObject.
'name': 'Android Warhol T-Shirt',
'category': 'Apparel/T-Shirts',
'brand': 'Google',
'variant': 'black',
'list': 'Search Results',
'position': 1 // 'position' indicates the product position in the list.
});
ga('ec:addImpression', {
'id': 'P67890',
'name': 'YouTube Organic T-Shirt',
'category': 'Apparel/T-Shirts',
'brand': 'YouTube',
'variant': 'gray',
'list': 'Search Results',
'position': 2
});
ga('send', 'pageview'); // Send product impressions with initial pageview.
اندازه گیری کلیک محصول
در مرحله بعد، یک کاربر با کلیک بر روی لیست محصول برای مشاهده جزئیات بیشتر، به این محصول خاص ابراز علاقه می کند.
برای اندازه گیری کلیک محصول، از ec:addProduct
و ec:setAction
استفاده کنید:
// Called when a link to a product is clicked.
function onProductClick() {
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'position': 1
});
ga('ec:setAction', 'click', {list: 'Search Results'});
// Send click with an event, then send user to product page.
ga('send', 'event', 'UX', 'click', 'Results', {
hitCallback: function() {
document.location = '/product_details?id=P12345';
}
});
}
سپس پیوند محصول می تواند به صورت زیر پیاده سازی شود:
<a href="/next-page.html"
onclick="onProductClick(); return !ga.loaded;">
Android Warhol T-Shirt
</a>
اندازه گیری نمای جزئیات محصول
پس از کلیک بر روی لیست محصول، کاربر صفحه جزئیات محصول را مشاهده می کند.
برای اندازهگیری نمای جزئیات محصول، از ec:addProduct
و ec:setAction
برای تعیین یک عملکرد detail
استفاده کنید:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black'
});
ga('ec:setAction', 'detail');
ga('send', 'pageview'); // Send product details view with the initial pageview.
اندازه گیری اضافه یا حذف از سبد خرید
کاربر تمایل خود را برای خرید کالا با افزودن آن به سبد خرید اعلام می کند.
برای اندازه گیری اضافه یا حذف یک محصول از سبد خرید، از ec:addProduct
استفاده کنید و نوع add
یا remove
را تنظیم کنید:
// Called when a product is added to a shopping cart.
function addToCart(product) {
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
ga('ec:setAction', 'add');
ga('send', 'event', 'UX', 'click', 'add to cart'); // Send data using an event.
}
اندازه گیری فرآیند پرداخت
اکنون کاربر آماده است تا فرآیند پرداخت را آغاز کند که در این مثال شامل دو مرحله است که هر کدام در صفحات جداگانه ای قرار دارند:
- جزئیات پرداخت را اضافه کنید (payment.html).
- جزئیات حمل و نقل را اضافه کنید (shipping.html).
در صورت امکان، مطمئن شوید که یک قیف پرداخت را در مدیریت رابط وب، در تنظیمات تجارت الکترونیک ، به درستی پیکربندی کردهاید. مثلا:
مرحله 1 - پرداخت
برای اندازهگیری مرحله اول پرداخت، از ec:addProduct
برای هر محصول در سبد خرید و ec:setAction
برای نشان دادن checkout
استفاده کنید. ec:setAction
یک actionFieldObject
برای توصیف مرحله پرداخت با یک عدد انجام میدهد و اطلاعات اضافی در مورد نوع پرداخت پیشفرض برای این کاربر با استفاده از فیلد option
گنجانده شده است:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
/**
* Called when the user begins the checkout process.
* @param {Array} cart An array representing the user's shopping cart.
*/
function checkout(cart) {
for(var i = 0; i < cart.length; i++) {
var product = cart[i];
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
}
}
// In the case of checkout actions, an additional actionFieldObject can
// specify a checkout step and option.
ga('ec:setAction','checkout', {
'step': 1, // A value of 1 indicates this action is first checkout step.
'option': 'Visa' // Used to specify additional info about a checkout stage, e.g. payment method.
});
ga('send', 'pageview'); // Pageview for payment.html
مرحله 2 - حمل و نقل
برای اندازه گیری مرحله دوم پرداخت، از ec:addProduct
برای هر محصول در سبد خرید و ec:setAction
برای نشان دادن پرداخت استفاده کنید. در این مورد، ما اطلاعات بیشتری در مورد گزینه حمل و نقل انتخاب شده در هنگام ارسال نمای صفحه اولیه نداریم، بنابراین با استفاده از ec:setAction
برای نشان دادن checkout_option
به طور جداگانه با آن برخورد می شود.
// Measure checkout step 2:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
/**
* Called when the user begins the checkout process.
* @param {Array} cart An array representing the user's shopping cart.
*/
function checkout(cart) {
for(var i = 0; i < cart.length; i++) {
var product = cart[i];
ga('ec:addProduct', {
'id': product.id,
'name': product.name,
'category': product.category,
'brand': product.brand,
'variant': product.variant,
'price': product.price,
'quantity': product.qty
});
}
}
ga('ec:setAction','checkout', {'step': 2});
ga('send', 'pageview'); // Pageview for shipping.html
// Called when user has completed shipping options.
function onShippingComplete(stepNumber, shippingOption) {
ga('ec:setAction', 'checkout_option', {
'step': stepNumber,
'option': shippingOption
});
ga('send', 'event', 'Checkout', 'Option', {
hitCallback: function() {
// Advance to next page.
}
});
}
سپس فرم را می توان به صورت زیر پیاده سازی کرد:
<a href="/next-page.html"
onclick="onShippingComplete(2, 'FedEx'); return !ga.loaded;">
Continue
</a>
اندازه گیری یک معامله
در نهایت کاربر فرآیند پرداخت را تکمیل کرده و خرید خود را ارسال می کند.
برای اندازهگیری فروش یک یا چند محصول، از ec:addProduct
برای اضافه کردن هر محصول و سپس ec:setAction
برای مشخص کردن purchase
استفاده کنید. اطلاعات سطح تراکنش مانند درآمد کل، مالیات و غیره را می توان از طریق یک actionFieldObject
مشخص کرد. مثلا:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'price': '29.20',
'quantity': 1
});
// Transaction level information is provided via an actionFieldObject.
ga('ec:setAction', 'purchase', {
'id': 'T12345',
'affiliation': 'Google Store - Online',
'revenue': '37.39',
'tax': '2.85',
'shipping': '5.34',
'coupon': 'SUMMER2013' // User added a coupon at checkout.
});
ga('send', 'pageview'); // Send transaction data with initial pageview.
مشخص کردن ارزهای محلی
بهطور پیشفرض، میتوانید از طریق رابط وب مدیریت Google Analytics، یک واحد پول رایج، جهانی را برای همه تراکنشها و موارد پیکربندی کنید. به طور پیش فرض، ارز جهانی برای همه اقلام و معاملات استفاده می شود. برای وبسایتهایی که تراکنشها را با چندین ارز انجام میدهند، افزونه تجارت الکترونیک به شما امکان میدهد ارز محلی تراکنش را مشخص کنید.
واحد پول محلی باید در استاندارد ISO 4217
مشخص شود. برای فهرست کامل ارزهای تبدیل پشتیبانی شده، سند مرجع کدهای ارز را بخوانید.
ارزهای محلی با استفاده از ویژگی ردیاب currencyCode
مشخص می شوند. به عنوان مثال، این ردیاب مقادیر ارز را به صورت یورو ارسال می کند:
ga('create', 'UA-XXXXX-Y');
ga('require', 'ec');
ga('set', 'currencyCode', 'EUR'); // Set currency to Euros.
ga('ec:addProduct', {
'id': 'P12345',
'name': 'Android Warhol T-Shirt',
'category': 'Apparel',
'brand': 'Google',
'variant': 'black',
'price': '21.89',
'quantity': 1
});
ga('ec:setAction', 'purchase', {
id: 'T12345',
affiliation: 'Google Store - Online',
revenue: '28.03',
tax: '2.14',
shipping: '4.00',
coupon: 'SUMMER2013'
});
ga('send', 'pageview');