الرابط

يعمل المكوّن الإضافي للربط على تبسيط عملية تنفيذ القياس على جميع النطاقات كما هو موضَّح في دليل القياس على جميع النطاقات لرمز analytics.js.

نظرة عامة

تعمل ميزة "القياس على جميع النطاقات" من خلال مشاركة رقم تعريف عميل فريد بين النطاق المصدر والنطاق الوجهة. تتكوّن هذه العملية من خطوتَين:

  1. يحتاج النطاق المصدر إلى التأكّد من احتواء جميع عناوين URL التي تشير إلى النطاق الوجهة على معرِّف العميل للنطاق المصدر.
  2. يجب أن يعرف نطاق الوجهة كيفية التحقّق من توفُّر معرّف عميل في عنوان URL بعد انتقال المستخدم إلى هناك.

وينفّذ المكوّن الإضافي للربط ذلك عن طريق إضافة مَعلمة linker إلى عناوين URL التي تشير إلى نطاق الوجهة. تحتوي مَعلمة الرابط على معرِّف العميل بالإضافة إلى الطابع الزمني الحالي والبيانات الوصفية للمتصفّح التي تم تشفيرها فيها. يتم استخدام الطابع الزمني والبيانات الوصفية لتجنُّب المشاكل المتعلقة بمشاركة عناوين URL.

ستبدو مَعلمة الرابط على النحو التالي:

_ga=1.199239214.1624002396.1440697407

في نطاق الوجهة، يتم توفير الحقل allowLinker، والذي عندما توجّه true تعليمات إلى analytics.js للتحقق من معلَمات رابط في عنوان URL. إذا تم العثور على مَعلمة الرابط وكانت صالحة، تستخلص مَعلمة العميل من المَعلمة وتخزّنها.

يسمح المكوّن الإضافي "أداة الربط" بإضافة مَعلمة الرابط تلقائيًا ويدويًا إلى عناوين URL في الروابط والنماذج على الصفحة. في معظم الحالات، ننصح باستخدام الطريقة التلقائية.

إضافة مَعلمات الربط تلقائيًا

لإعداد الربط التلقائي عبر النطاقات في النطاق المصدر لعناوين URL التي تشير إلى النطاق الوجهة، يجب require المكوّن الإضافي للرابط واستدعاء طريقة autoLink لهذا الغرض.

يمكن استدعاء طريقة autoLink من خلال قائمة انتظار الأوامر.

بعد التشغيل، سيستمع analytics.js إلى النقرات على الروابط التي تشير إلى النطاق الوجهة (أو النطاقات) وسيضيف مَعلمة الرابط إلى تلك الروابط مباشرةً قبل بدء التنقّل. من الضروري الانتظار إلى أن ينقر المستخدِم على رابط لإضافة مَعلمة الرابط، لأنّ صلاحية مَعلمات الرابط تنتهي بعد دقيقتَين.

يجب تحديد معلَمة decorateForms الاختيارية وضبطها على true إذا كانت لديك نماذج على موقعك الإلكتروني تشير إلى نطاق الوجهة.

الاستخدام

ga('[trackerName.]linker:autoLink', domains, [useAnchor], [decorateForms]);

المَعلمات

الاسم النوع مطلوبة الوصف
domains Array[RexExp|string] نعم مصفوفة من السلاسل أو التعبيرات العادية المطلوب مطابقتها مع hostname لعنوان URL، ما يشير إلى النطاقات التي يجب تطبيق الربط التلقائي عليها. في حال تمرير سلسلة، ستُجري analytics.js مطابقة سلسلة فرعية، ما يعني أنّ example.com سيطابق الروابط التي تشير إلى blog.example.com.
useAnchor boolean لا عند ضبط القيمة على "صحيح"، ستتمّ إضافة مَعلمة الرابط إلى جزء الارتساء لعنوان URL بدلاً من جزء طلب البحث.
decorateForms boolean لا عند ضبط القيمة على "صحيح"، سيضيف المكوّن الإضافي للربط مَعلمة رابط إلى عمليات إرسال النماذج التي تشير إلى الوجهات التي تتطابق مع مَعلمة domain.

مثال

// Loads the Linker plugin
ga('require', 'linker');

// Instructs the Linker plugin to automatically add linker parameters
// to all links and forms pointing to the domain "destination.com".
ga('linker:autoLink', ['destination.com'], false, true);

إضافة مَعلمات الربط يدويًا

يمكنك إضافة مَعلمة الربط يدويًا إلى عنصر <a> أو <form> محدّد باستخدام طريقة decorate. تكون هذه الطريقة مطلوبة فقط في حال عدم استخدام طريقة autoLink الموضّحة أعلاه.

decorate

يمكن استدعاء طريقة decorate من خلال قائمة انتظار الأوامر.

من المهم التأكُّد من أنّ استدعاء طريقة التزيين أقرب ما يكون إلى وقت حدوث التنقّل قدر الإمكان لأنّ مَعلمات الرابط تنتهي صلاحية مَعلماتها بعد دقيقتَين. ويجب استدعاء هذه الطريقة في أغلب الأحيان في معالج الأحداث.

الاستخدام

ga('[trackerName.]linker:decorate', element, [useAnchor]);

المَعلمات

الاسم النوع مطلوبة الوصف
element HTMLElement نعم العنصر <a> أو <form> المطلوب إلحاق مَعلمة الرابط به
useAnchor boolean لا عند ضبط القيمة على "صحيح"، ستتمّ إضافة مَعلمة الرابط إلى جزء الارتساء لعنوان URL بدلاً من جزء طلب البحث.

مثال

// Loads the Linker plugin
ga('require', 'linker');

// Gets a reference to a link pointing to an external domain.
var destinationLink = document.getElementById('destination-link');

// Adds click handler that decorates `destinationLink`.
destinationLink.addEventListener('click', function() {
  ga('linker:decorate', destinationLink);
});

linkerParam

بالإضافة إلى الإجراء decorate، يمكنك يدويًا الحصول على مَعلمة الربط التي سيستخدمها جهاز التتبُّع في الحقل linkerParam.

ga(function(tracker) {
  var linkerParam = tracker.get('linkerParam');
});

ضبط موقع إلكتروني لقبول مَعلمات الربط

بعد وصول المستخدِم إلى صفحة على نطاق الوجهة تحتوي على مَعلمة رابط في عنوان URL، يحتاج analytics.js إلى معرفة هذه المَعلمة للبحث عن تلك المَعلمة.

يمكنك توجيه الصفحة المقصودة للبحث عن مَعلمات الربط عن طريق ضبط الحقل allowLinker على true عند إنشاء أداة التتبُّع:

ga('create', 'UA-XXXXXX-X', 'auto', {
  allowLinker: true
});

القياس الثنائي الاتجاه على جميع النطاقات

يشير ذلك المصطلح إلى مسار المستخدِم الذي يبدأ فيه المستخدمون دائمًا في النطاق المصدر ثم ينتقلون بعد ذلك إلى نطاق الوجهة فقط في عملية القياس على جميع النطاقات أحادية الاتجاه. تفترض التعليمات أعلاه هذا النوع من تدفق المستخدم.

وفي الحالات التي لا يكون فيها معروفًا النطاق الذي سيزوره المستخدمون أولاً، عليك تنفيذ ميزة "القياس على جميع النطاقات" الثنائية الاتجاه، حيث يتم إعداد كل نطاق للعمل كالمصدر أو الوجهة.

لتنفيذ القياس الثنائي الاتجاه على جميع النطاقات، يمكنك تفعيل الربط التلقائي على كلا النطاقين وضبطهما معًا لقبول مَعلمات الربط.

في source.com:

ga('create', 'UA-XXXXX-Y', 'auto', {allowLinker: true});
ga('require', 'linker');
ga('linker:autoLink', ['destination.com']);

في destination.com:

ga('create', 'UA-XXXXX-Y', 'auto', {allowLinker: true});
ga('require', 'linker');
ga('linker:autoLink', ['source.com']);

استخدام مقتطف واحد في جميع النطاقات

لتبسيط ذلك أكثر، يمكنك إدراج جميع النطاقات المحتملة التي تريد قياسها في طريقة autoLink، ما يسمح لك باستخدام مقتطف الرمز نفسه في كل نطاق:

ga('create', 'UA-XXXXX-Y', 'auto', {allowLinker: true});
ga('require', 'linker');
ga('linker:autoLink', ['source.com', 'destination.com']);