في بعض الأحيان، يتطلب الحصول على بيانات حقول التتبُّع وضبطها على مرجع أداة الإحالة نفسها. بما أنّ الأوامر التي تتم إضافتها إلى قائمة انتظار الأوامر 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
:
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'));
});
بوجهٍ عام، لا يُنصح باستخدام بنية ampersand ويجب استخدامها فقط عندما لا يتوفّر اسم حقل analytics.js لمعلّمة Measurement Protocol (يحدث ذلك من حين لآخر إذا تمت إضافة ميزة جديدة إلى Measurement Protocol قبل تنفيذها في analytics.js).
الخطوات اللاحقة
بعد أن تعرّفت على كيفية إنشاء أدوات تتبُّع وتعديل البيانات المخزّنة عليها، تتمثل الخطوة التالية في التعرّف على كيفية إرسال هذه البيانات إلى "إحصاءات Google" لمعالجتها.