يتطلب الحصول على بيانات الحقل وإعدادها على جهاز التتبع أحيانًا الإشارة إلى كائن أداة التتبع نفسه. بما أنّ الأوامر المضافة إلى قائمة انتظار الأوامر ga()
يتم تنفيذها بشكل غير متزامن ولا تعرض قيمة، وبما أنّ برامج التتبّع يتم إنشاؤها بشكل شائع باستخدام الأمر create
، يتطلب الحصول على إشارة إلى كائن أداة التتبُّع الانتظار حتى بعد تنفيذ الأمر create
. يمكنك إجراء ذلك من خلال معاودة الاتصال الجاهزة.
معاودة الاتصال الجاهزة
معاودة الاتصال الجاهزة هي دالة يمكنك إضافتها إلى قائمة انتظار الأوامر ga()
. سيتم استدعاء الدالة فور تحميل مكتبة analytics.js بالكامل، وتنفيذ جميع الأوامر السابقة المضافة إلى قائمة الانتظار.
بما أنّه يتم تنفيذ جميع الأوامر إلى قائمة الانتظار بالترتيب، ستضمن إضافة طلب استدعاء جاهز إلى قائمة الانتظار بعد إضافة الأمر create
تنفيذ معاودة الاتصال الجاهزة بعد إنشاء جهاز التتبُّع. إذا تم إنشاء أداة تتبُّع تلقائية عند استدعاء معاودة اتصال جاهزة، يتم تمريرها كوسيطة الأولى (والوحيدة) لمعاودة الاتصال.
يوضح الرمز التالي كيفية الوصول إلى كائن أداة التتبع التلقائي وتسجيله في وحدة التحكّم:
ga('create', 'UA-XXXXX-Y', 'auto');
ga(function(tracker) {
// Logs the tracker created above to the console.
console.log(tracker);
});
الحصول على أدوات التتبع باستخدام طرق ga Object
إذا كنت لا تستخدم أداة تتبُّع تلقائية أو إذا كان هناك أكثر من أداة تتبُّع واحدة على الصفحة، يمكنك الوصول إليها باستخدام إحدى طرق عناصر ga
.
بعد تحميل مكتبة analytics.js بالكامل، تضيف طرقًا إضافية إلى عنصر ga
نفسه. يُستخدَم اثنان من هذه الطرق، وهما getByName
وgetAll
، للوصول إلى عناصر التتبُّع.
getByName
إذا كنت تعرف اسم جهاز التتبُّع الذي تريد الوصول إليه، يمكنك إجراء ذلك باستخدام طريقة getByName
:
ga('create', 'UA-XXXXX-Y', 'auto', 'myTracker');
ga(function() {
// Logs the "myTracker" tracker object to the console.
console.log(ga.getByName('myTracker'));
});
getAll
للحصول على مجموعة من جميع أدوات التتبّع التي تم إنشاؤها، استخدِم الطريقة getAll
:
ga('create', 'UA-XXXXX-Y', 'auto', 'tracker1');
ga('create', 'UA-XXXXX-Z', 'auto', 'tracker2');
ga(function() {
// Logs an array of all tracker objects.
console.log(ga.getAll());
});
الحصول على البيانات المخزنة على جهاز التتبع
بعد إضافة إشارة إلى عنصر تتبُّع، يمكنك استخدام طريقة get
الخاصة به للوصول إلى قيمة أي حقل مخزَّن حاليًا في أداة التتبُّع.
ga('create', 'UA-XXXXX-Y', 'auto');
ga(function(tracker) {
// Logs the trackers name.
// (Note: default trackers are given the name "t0")
console.log(tracker.get('name'));
// Logs the client ID for the current user.
console.log(tracker.get('clientId'));
// Logs the URL of the referring site (if available).
console.log(tracker.get('referrer'));
});
تعديل البيانات
يمكن تعديل عناصر أداة التتبُّع باستخدام الطريقة set
. يمكن استدعاء طريقة set
في جهاز التتبُّع إلى عنصر أداة التتبُّع نفسه أو من خلال إضافة أمر set
إلى قائمة انتظار الأوامر ga()
.
بما أنّ الحصول على إشارة إلى عنصر أداة تتبُّع يتطلّب استخدام ميزة معاودة الاتصال الجاهزة، ننصحك باستخدام قائمة انتظار الأوامر ga()
لتعديل جهاز التتبُّع.
قائمة انتظار الأوامر ga()
يمكن استدعاء الأمر set
بطريقتين: من خلال تمرير معلَمتين، وهما حقل وقيمته المقابلة، أو من خلال تمرير كائن من أزواج الحقل/القيمة.
يضبط المثال التالي الحقل page
على '/about'
في جهاز التتبُّع التلقائي:
ga('set', 'page', '/about');
يضبط هذا المثال الحقلَين page
وtitle
في الوقت نفسه:
ga('set', {
page: '/about',
title: 'About Us'
});
استخدام جهاز تتبُّع يحمل اسمًا
إذا كنت تستخدم جهاز تتبُّع يحمل اسمًا بدلاً من جهاز التتبُّع التلقائي، يمكنك إدخال اسمه في سلسلة الأوامر.
يعيّن الاستدعاء التالي الحقل page
في أداة التتبع المسماة "myTracker":
ga('myTracker.set', 'page', '/about');
على جسم جهاز التتبع نفسه
إذا كان لديك إشارة إلى كائن أداة التتبُّع، يمكنك استدعاء طريقة set
الخاصة بهذا الجهاز مباشرةً:
ga(function(tracker) {
tracker.set('page', '/about');
});
بنية علامة العطف
عادةً ما يتم الحصول على حقول أداة التتبع وتعيينها باستخدام أسماء الحقول. (يمكنك الرجوع إلى مرجع الحقل للحصول على قائمة كاملة بحقول analytics.js وأسمائها).
هناك طريقة بديلة للحصول على الحقول وإعدادها، وهي الإشارة إليها باستخدام أسماء أسماء معلّمات Measurement Protocol المقابلة لها.
على سبيل المثال، يسجّل كل من تعبيرَي console.log
التاليَين عنوان المستند في وحدة التحكّم:
ga(function(tracker) {
// Gets the title using the analytics.js field name.
console.log(tracker.get('title'));
// Gets the title using the measurement protocol
// parameter name, prefixed with an ampersand.
console.log(tracker.get('&dt'));
});
بوجهٍ عام، لا يوصى باستخدام بنية علامة العطف ويجب عدم استخدامها إلا عند عدم وجود اسم حقل analytics.js لمعلمة Measurement Protocol (يحدث هذا من حين لآخر إذا تمت إضافة ميزة جديدة إلى Measurement Protocol قبل تنفيذها في analytics.js).
الخطوات التالية
والآن بعد أن تعرّفت على كيفية إنشاء أجهزة التتبع وتعديل البيانات المخزنة عليها، تتمثّل الخطوة التالية في معرفة كيفية إرسال تلك البيانات إلى "إحصاءات Google" لمعالجتها.