رمز التتبّع: النطاقات والدلائل

يصف هذا المرجع الطرق التي تستخدِمها لتخصيص آلية عمل تقارير "إحصاءات Google" على مستوى النطاقات أو على مستوى مضيفين مختلفين أو ضمن الأدلة الفرعية لموقع إلكتروني.

طرق دليل/نطاق GATC

تفاصيل الطريقة

_cookiePathCopy()

_cookiePathCopy(newPath)

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

عند استدعاء هذه الدالة، تنسخ على الفور أي ملفات تعريف ارتباط إلى مسار ملف تعريف الارتباط الجديد. وبالتالي، إذا لم يتم استدعاء طريقة _trackPageview()، سيتم تقديم قيم أي ملفات تعريف ارتباط حالية في "إحصاءات Google". لهذا السبب، ننصح باستدعاء هذه الطريقة بعد _trackPageview() بالإضافة إلى طرق الإعداد الأخرى التي قد تؤثر في قيم ملفات تعريف الارتباط أو قيم الحملات التي تريد ضبطها، مثل _setCampaignCookieTimeout() أو _setReferrerOverride().

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_cookiePathCopy', '/newSubDirectory/']);

المَعلَمات

String   newPath مسار جديد لتخزين ملفات تعريف ارتباط GATC فيه.

_getLinkerUrl()

_getLinkerUrl(targetUrl, useHash)

تعمل هذه الطريقة مع الطريقتَين _setDomainName() و_setAllowLinker() لتفعيل تتبُّع المستخدمين عبر النطاقات، وتحديدًا لإطارات iframe والروابط التي تفتح في نافذة جديدة. تعرِض هذه الطريقة سلسلة من جميع بيانات ملفات تعريف الارتباط في GATC من رابط البدء عن طريق إلحاقها بمَعلمة عنوان URL. ويمكن بعد ذلك تمرير هذا الإطار إلى موقع إلكتروني أو إطار iframe آخر.

مقتطف غير متزامن (يُنصح به)
  _gaq.push(function() {
    var pageTracker = _gat._getTrackerByName(); // Gets the default tracker.
    var linkerUrl = pageTracker._getLinkerUrl('http://www.my-example-iframecontent.com/');
  });

المَعلَمات

String   targetUrl عنوان URL للموقع الإلكتروني المستهدَف المطلوب إرسال قيم ملفات تعريف الارتباط إليه

Boolean   useHash هل تريد ضبط القيمة على "صحيح" لتمرير متغيّرات رمز التتبّع باستخدام فاصل علامات الارتساء # بدلاً من الإعداد التلقائي ؟ فاصل سلسلة طلب البحث.

returns

String عنوان URL للرابط.

_link(targetUrl, useHash)

تعمل هذه الطريقة إلى جانب الطريقتَين _setDomainName() و_setAllowLinker() لتفعيل تتبُّع المستخدمين على مستوى النطاقات. تنقل الطريقة _link() ملفات تعريف ارتباط GATC من هذا الموقع الإلكتروني إلى موقع إلكتروني آخر عبر معلَمات عنوان URL (HTTP GET). ويؤدي أيضًا إلى تغيير Document.location وإعادة توجيه المستخدم إلى عنوان URL الجديد.

مقتطف غير متزامن (يُنصح به)
<a href="http://example.com/test.html"
onclick="_gaq.push(['_link', 'http://example.com/test.html']); return false;">click me</a>

المَعلَمات

String   targetUrl عنوان URL للموقع الإلكتروني المستهدَف المطلوب إرسال قيم ملفات تعريف الارتباط إليه

Boolean   useHash هل تريد ضبط القيمة على "صحيح" لتمرير متغيّرات رمز التتبّع باستخدام فاصل علامات الارتساء # بدلاً من الإعداد التلقائي ؟ فاصل سلسلة طلب البحث.


_linkByPost()

_linkByPost(formObject, useHash)

تعمل هذه الطريقة مع الطريقتَين _setDomainName() و_setAllowLinker() لتفعيل ميزة تتبُّع المستخدمين على مستوى النطاقات. تنقل الطريقة _linkByPost() ملفات تعريف ارتباط GATC من نموذج الإحالة إلى موقع إلكتروني آخر في سلسلة ملحقة بقيمة الإجراء بالنموذج (HTTP POST). ويتم استخدام هذه الطريقة عادةً عند تتبُّع سلوك المستخدم من موقع إلكتروني واحد إلى موقع إلكتروني لسلة التسوّق تابع لجهة خارجية، ولكن يمكن استخدامها أيضًا لإرسال بيانات ملفات تعريف الارتباط إلى نطاقات أخرى في نوافذ منبثقة أو في إطارات iframe.

مقتطف غير متزامن (يُنصح به)
    <form action="http://www.shoppingcartsite.com/myService/formProcessor.php"
    name="f" method="post" onsubmit="_gaq.push(['_linkByPost', this]);">
...
</form>

بالإضافة إلى ذلك، يجب ضبط السمة _setAllowLinker() على true على صفحة الويب الوجهة لكي يعمل الرابط.

المَعلَمات

HTMLFormElement   formObject كائن نموذج يضمّ طلب POST

Boolean   useHash هل تريد ضبط القيمة على "صحيح" لتمرير متغيّرات رمز التتبّع باستخدام فاصل علامات الارتساء # بدلاً من الإعداد التلقائي ؟ فاصل سلسلة طلب البحث.


_setAllowHash()

_setAllowHash(bool)

لضبط علامة تجزئة النطاق "السماح" ويتم ضبط هذه القيمة تلقائيًا على true. تنشئ وظيفة تجزئة النطاق في "إحصاءات Google" قيمة تجزئة من نطاقك، وتستخدم هذا الرقم للتحقّق من سلامة ملفات تعريف الارتباط للزائرين. إذا كانت لديك عدة نطاقات فرعية، مثل example1.example.com وexample2.example.com، وتريد تتبُّع سلوك المستخدم على كلا النطاقَين الفرعيَين، عليك إيقاف تجزئة النطاق حتى لا ترفض عملية التحقّق من سلامة ملفات تعريف الارتباط أي ملف تعريف ارتباط للمستخدم صادر من نطاق إلى آخر. بالإضافة إلى ذلك، يمكنك إيقاف هذه الميزة لتحسين أداء التتبُّع لكل صفحة.

المَعلَمات

Boolean   true أو false، تكون القيمة التلقائية true. في حال ضبط هذه المَعلمة على true، سيتم تفعيل تجزئة النطاق. وبخلاف ذلك، يتم إيقاف تجزئة النطاق.

_setAllowLinker()

_setAllowLinker(bool)

تعمل هذه السياسة على ضبط علامة وظيفة الرابط كجزء من تفعيل ميزة تتبُّع المستخدمين على جميع النطاقات. تكون هذه الطريقة مضبوطة تلقائيًا على false ويتم إيقاف الربط. راجِع أيضًا الطرق _link() و_linkByPost() و_setDomainName() لتفعيل التتبُّع عبر النطاقات. استخدِم طريقة _setAllowLinker على الموقع الإلكتروني المستهدَف، بحيث يستخدم الموقع الإلكتروني المستهدَف بيانات ملفات تعريف الارتباط في مَعلمة عنوان URL، بدلاً من منطق الجلسة العادي.

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_setAllowLinker', true]); 

المَعلَمات

Boolean  true أو false، القيمة التلقائية هي false. في حال ضبط هذه المَعلمة على true، سيتم تفعيل الرابط. وبخلاف ذلك، سيتم إيقاف ربط النطاق.

_setCookiePath()

_setCookiePath(newCookiePath)

تُحدِّد مسار ملف تعريف الارتباط الجديد لموقعك الإلكتروني. تضبط "إحصاءات Google" تلقائيًا مسار ملف تعريف الارتباط على مستوى الجذر (/). وفي معظم الحالات، يكون هذا هو الخيار المناسب ويعمل بشكلٍ صحيح مع رمز التتبّع الذي تثبِّته في دليل الويب الخاص بالشركة أو موقعك الإلكتروني أو مدونتك. وفي بعض الحالات التي يقتصر فيها وصول المستخدمين على دليل فرعي من نطاق معيّن فقط، يمكن لهذه الطريقة حلّ مشاكل التتبّع من خلال ضبط دليل فرعي كمسار تلقائي لجميع عمليات التتبُّع.

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

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_setCookiePath', '/myBlogDirectory']); 

المَعلَمات

String   newCookiePath مسار جديد لملف تعريف الارتباط سيتم ضبطه.

_setDomainName()

_setDomainName(newDomainName)

لضبط اسم النطاق لملفات تعريف ارتباط GATC. تتوفر ثلاثة أوضاع لهذه الطريقة: ("auto" | "none" | [domain]). يتم ضبط الطريقة تلقائيًا على auto، في محاولة لحلّ اسم النطاق استنادًا إلى السمة document.domain في DOM.

تحديد نطاق

راجِع دليل التتبُّع عبر النطاقات للاطّلاع على مجموعة متنوعة من الأمثلة التي توضّح متى يتم تحديد نطاق وكيفية تحديده باستخدام هذه الطريقة. يوضّح المثال التالي كيفية ضبط اسم النطاق على example.com:

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_setDomainName', 'example.com']); 

عزل نطاقات المستوى الأعلى

ويضمن ضبط هذه الطريقة على none عدم إمكانية وصول أي نطاقات فرعية إلى ملفات تعريف الارتباط في نطاق معيّن.

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_setDomainName', 'none']); 

المَعلَمات

String   newDomainName اسم النطاق التلقائي الجديد المطلوب إعداده.

_storeGac(bool)

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

مقتطف غير متزامن (يُنصح به)
_gaq.push(['_storeGac', false]);