دليل تكامل موافقة ملفات تعريف الارتباط لخرائط الحرارة وتسجيل الجلسات في Hotjar: دليل 2026 للناشرين
يحتل Hotjar مكانةً فريدة في مجموعة الأدوات. فهو ليس منصة تحليل ويب مثل Google Analytics، ولا منصة تحليل منتجات مثل Amplitude أو Mixpanel، ولا مدير وسوم. إنه أداة بحث تجربة المستخدم التي توجد تحديداً لتسجيل ما يفعله المستخدمون الفرديون على الصفحة — أين يحركون الماوس، وما يضغطون عليه، وأين يتمررون، وأين يترددون، وفي حالة تسجيل الجلسة، ما كتبوه بالضبط وما شاهدوه مُصيَّراً على الشاشة. هذه الدقة هي المنتج ذاته. وهذا أيضاً هو السبب في أن المنظمين قد أفردوا إعادة تشغيل الجلسة بوصفها إحدى أعلى فئات المخاطر في المعالجة السلوكية، ولماذا يُعدّ نشر Hotjar بتهاون أحد أسهل الطرق لجعل موقع ويب متوافق في الأساس يخرج عن الامتثال. فقد نشر كل من CNIL وGarante وEDPB توجيهات تستهدف تحديداً سلوك إعادة تشغيل الجلسات، وتعامل مجموعة عمل بانر ملفات تعريف الارتباط لـ EDPB لعام 2026 معها بوصفها فئة أولوية. والخبر السار هو أن Hotjar أحد أفضل الأدوات هندسةً في هذه الفئة للنشر المبني على الموافقة أولاً — بشرط أن يستخدم الناشر فعلاً الضوابط المتاحة.
لماذا يتطلب Hotjar موافقة صريحة
ملف تعريف جمع Hotjar هو ما يُفعِّل التزامات الموافقة عبر كل إطار عمل مهم. عند التهيئة الافتراضية، يكتب سكريبت تتبع Hotjar ما لا يقل عن ثلاثة ملفات تعريف ارتباط من الطرف الأول — _hjSessionUser_{siteId}، و_hjSession_{siteId}، وسلسلة من ملفات تعريف الارتباط للقمع والمصدر الوارد — في المتصفح في غضون ميلي ثوانٍ من تحميل الصفحة. ثم يبدأ السكريبت في بث سجل متواصل لإحداثيات المؤشر وإحداثيات النقر وموضع التمرير وحجم نافذة العرض، وعند تمكين تسجيل الجلسة، يتم بث DOM الكامل المُصيَّر مقارنةً بخط أساس.
بموجب المادة 5(3) من توجيه ePrivacy، كل واحدة من ملفات تعريف الارتباط هذه عملية تخزين ووصول تتطلب موافقة مسبقة وحرة ومحددة ومستنيرة وغير مبهمة في المنطقة الاقتصادية الأوروبية والمملكة المتحدة وسويسرا وأي دولة استوردت المعيار ذاته. بموجب GDPR، يشكل التدفق السلوكي معالجةً للبيانات الشخصية لأن مجموعة أثر المؤشر وعنوان IP وبصمة الجهاز ومعرف الجلسة كافية لتحديد هوية فرد. بموجب CCPA وCPRA، تُعدّ نفس المجموعة بيعاً أو مشاركةً ما لم يكن للناشر عقد مزود خدمة ذي صلة مع Hotjar — الذي تقدمه Hotjar عبر DPA المتوافق مع CCPA، ولكنه لا يصبح سارياً إلا عند تهيئة التكامل بشكل صحيح. بموجب إرشادات EDPB لإعادة تشغيل الجلسات، المعيار أعلى بعد: يجب ربط إعادة التشغيل بغرض بحث UX محدد وشرعي، وفترة الاحتفاظ يجب أن تكون الحد الأدنى الضروري، ويجب إبلاغ موضوع البيانات ليس فقط بوجود التسجيلات بل بأن جلسته الخاصة قد يعيد تشغيلها محلل.
ما يجمعه Hotjar قبل الموافقة — وما يجب قمعه
أكثر أخطاء التنفيذ شيوعاً هي تلك التي يتم شحنها مع البدء السريع لـ Hotjar: لصق سكريبت التتبع مباشرةً في <head> الصفحة. هذا يعمل، لكنه يُحمّل Hotjar قبل أن تُصيَّر لافتة ملفات تعريف الارتباط حتى، مما يعني أن ملفات تعريف الارتباط تُعيَّن وتسجيل السلوك يبدأ في أول مشاهدة للصفحة — بصرف النظر عما يقرره المستخدم لاحقاً. كل منظم أوروبي حكم على هذا النمط بالمثل: ملفات تعريف الارتباط المعيَّنة قبل الموافقة غير مشروعة، والناشر مسؤول.
لذلك يجب أن يمنع التكامل المتوافق سكريبت Hotjar من التحميل تماماً حتى تُمنح فئة الموافقة ذات الصلة. أنظف طريقة للقيام بذلك هي تغليف مقتطف Hotjar داخل وسم <script> مقيَّد بالموافقة يحقنه CMP فقط بعد أن يوافق المستخدم على فئة التحليلات أو أبحاث المنتج. إذا تم تحميل السكريبت عبر مدير وسوم، فإن ما يعادل ذلك هو تعيين المشغل لحدث منح الموافقة بدلاً من All Pages. توصي وثائق Hotjar الآن بهذا النمط بشكل صريح، وتكشف المنصة عن واجهة برمجة تطبيقات hj('consent', 'grant') للحالات التي يجب أن يكون فيها السكريبت موجوداً ولكن يبقى خاملاً حتى تُسجَّل الموافقة.
ملفات تعريف الارتباط والتخزين التي يكتبها Hotjar
يكتب Hotjar Tracking Code 6.x المعرفات التالية، وجميعها غير أساسية وتتطلب موافقة: _hjSessionUser_{siteId} بانتهاء صلاحية 365 يوماً يحتوي على معرف المستخدم، _hjSession_{siteId} بانتهاء صلاحية 30 دقيقة يحتوي على معرف الجلسة، _hjFirstSeen، _hjIncludedInSessionSample_{siteId}، _hjAbsoluteSessionInProgress، وعدد من ملفات تعريف ارتباط إسناد الحملات عند تفعيل الاستطلاعات أو أدوات ردود الفعل. تُخزَّن تسجيلات الجلسات نفسها على خوادم Hotjar ومرتبطة بمعرف الجلسة — لذلك يجب أن يُرسل سحب الموافقة أيضاً طلب حذف عبر API الخاص بـ Hotjar أو تدفق حذف المستخدم داخل المنتج.
تعيين Hotjar على أُطر الموافقة
لا يتكامل Hotjar بشكل أصلي مع IAB TCF أو IAB Global Privacy Platform. إنه ليس بائع تقنية إعلانية ولم يُقصد منه أن يكون كذلك. غير أنه يتكامل مع Google Consent Mode v2 عبر إشارة analytics_storage، ويكشف عن واجهة برمجة تطبيقات الموافقة الأصلية الخاصة به التي يمكن لأي CMP ربطها. النمط الذي يصمد أمام مراجعة المنظم يعامل كل قدرة من قدرات Hotjar كبوابة موافقة منفصلة.
- خرائط الحرارة وخرائط النقر مرتبطة بغرض التحليلات أو أبحاث المنتج. بمصطلحات TCF، هذا الغرض 8 في الغالب (قياس أداء المحتوى) مجتمعاً مع الغرض 1 (تخزين المعلومات و/أو الوصول إليها). بالنسبة لـ Consent Mode هذا هو analytics_storage.
- تسجيل الجلسة يجب أن يكون خلف إشارة منفصلة وأكثر صرامة. يلتقط التسجيل DOM المُصيَّر وأي حقل غير مُقنَّع، والاشتراك الصريح على مستوى التفضيلات — وليس موافقة التحليلات الشاملة — هو الموقف القابل للدفاع بموجب إرشادات EDPB لإعادة تشغيل الجلسة.
- الاستطلاعات وأدوات ردود الفعل يمكن أن تعمل ضمن نفس بوابة الموافقة كتسجيل الجلسة عند جمع إدخال نصي حر، أو ضمن بوابة التحليلات عند جمع بيانات التقييم فقط.
- مسارات التحويل وتتبع التحويلات مرتبطة ببوابة التحليلات؛ إذا تم نشر أي معرف مستخدم إلى CRM أو منصة إعلانية، تُطبَّق بوابة التسويق أيضاً.
نمط التكامل الذي يعمل
يتضمن النشر المرجعي أربعة أجزاء: CMP يكشف عن حدث تغيير الموافقة في الوقت الفعلي، ومحمّل سكريبت مؤجل يحقن مقتطف Hotjar فقط بعد إطلاق موافقة التحليلات، وطبقة قمع تسجيل الجلسة التي تضبط التسجيل افتراضياً على إيقاف حتى تُفتح بوابة منفصلة، وتهيئة إخفاء الإدخال التي تقمع بشكل صارم أي حقل سيعتبره المنظم حساساً حتى عند منح الموافقة. النقطة الرابعة كثيراً ما يتم تجاهلها: إخفاء الإدخال ليس بديلاً عن الموافقة، لكنه بديل للكارثة عند منح الموافقة لأبحاث مشروعة ويصادف أن يلصق المستخدم بيانات حساسة في حقل نصي حر.
تنفيذ الويب
على الويب، أنظف نمط هو الاشتراك في حدث تغيير الموافقة للـ CMP، ثم حقن مقتطف Hotjar بشكل مشروط عندما ينقلب الغرض التحليلي من false إلى true. استخدم document.createElement('script') لحقن كود التتبع مع تعيين السمة async، وأرفق معالج onload يستدعي hj('identify', userId, properties) فقط إذا كان معرف مستخدم مُتحقق من الخادم موجوداً. عند سحب الموافقة، اتصل بـ hj('consent', 'revoke')، واجعل جميع ملفات تعريف الارتباط _hj منتهية الصلاحية عبر document.cookie، وأرسل طلب حذف عبر Hotjar Data API لتسجيلات الجلسة السابقة للمستخدم. لا تُهيئ Hotjar بشكل كسول في نفس تمرير التصيير كاللافتة — يجب أن ينتظر السكريبت منحاً صريحاً، ويجب تسجيل المنح مع طابع زمني وسلسلة موافقة قبل أن يُطلق السكريبت.
إخفاء الإدخال وقمع البيانات الحساسة
يُشحن مسجل الجلسة في Hotjar بثلاثة أوضاع إخفاء: Suppress mode، وهو الوضع الافتراضي لحقول كلمات المرور وأي عنصر مُميَّز بسمة data-hj-suppress؛ وWhitelist mode، حيث تُسجَّل فقط المدخلات المُفعَّلة صراحةً؛ وMask mode، حيث تُسجَّل ضغطات المفاتيح كعلامات نجمية. بموجب قواعد الفئة الخاصة لـ GDPR وتعريف CCPA للمعلومات الشخصية الحساسة، يجب أن يستخدم أي حقل قد يلتقط معلومات صحية أو تفاصيل مالية أو معرفات حكومية أو بيانات بيومترية أو موقعاً جغرافياً دقيقاً أو محتويات اتصالات خاصة Suppress mode بصرف النظر عن حالة موافقة المستخدم. تعيين data-hj-suppress على مستوى النموذج بدلاً من مستوى الحقل هو النمط الأكثر أماناً — فهو يقمع النموذج بأكمله حتى لو أضاف مطور لاحقاً حقلاً جديداً نسي وضع علامة عليه بشكل فردي.
تطبيقات الصفحة الواحدة وتغييرات المسار
بالنسبة لـ SPAs (React، Vue، Angular، Svelte) يرتبط مقتطف Hotjar بتحميل الصفحة الأولي فقط بشكل افتراضي. لتتبع تحولات الصفحات الافتراضية يجب أن يستدعي Bootstrap المُعدّ hj('stateChange', newPath) في كل تغيير مسار. يحترم هذا الاستدعاء حالة الموافقة التي يحملها Hotjar في ذلك الوقت، لذلك لا تحتاج منطق تحكم CMP إلى التكرار — لكن تغيير المسار يجب ألا يُفعِّل تحميل سكريبت جديد إذا تم سحب الموافقة بين مشاهدات الصفحة.
التحقق من صحة التكامل
خطوة التحقق هي ما يتحقق منه المنظمون وما يتخطاه الناشرون في أغلب الأحيان. يجب أن يجتاز نشر Hotjar المُكامَل بشكل صحيح أربعة اختبارات بالترتيب. أولاً، يجب أن تُنتج جلسة متصفح جديدة مع عرض اللافتة دون اتخاذ أي خيار صفراً من الطلبات إلى static.hotjar.com، وscript.hotjar.com، أو vars.hotjar.com، وصفراً من ملفات تعريف ارتباط _hj في document.cookie. ثانياً، يجب أن يُبقي رفض التحليلات على هذه الحالة — لا تحميل سكريبت، ولا تسجيل، ولا ملفات تعريف ارتباط. ثالثاً، يجب أن يُنتج قبول التحليلات تحميل سكريبت وملفات تعريف ارتباط _hjSessionUser و_hjSession المتوقعة مع سمات SameSite الصحيحة، ويجب أن يظهر تسجيل خريطة الحرارة في لوحة معلومات Hotjar في غضون خمس دقائق. رابعاً، يجب أن يوقف سحب الموافقة بعد ذلك التسجيل الإضافي فوراً، ويُنهي صلاحية ملفات تعريف الارتباط، ويُفعِّل طلب حذف — التنظيف المتأخر هو نتيجة.
يهم سجل التدقيق بشكل منفصل. يتوقع المنظمون من الناشر أن يتمكن من إثبات، لأي تسجيل محدد في حساب Hotjar، أن المستخدم الذي أنشأه كان قد أعطى موافقة صالحة في لحظة الالتقاط. النمط القياسي هو تضمين إصدار الموافقة والطابع الزمني كسمة مخصصة في سجل مستخدم Hotjar عبر hj('identify', userId, { consent_version: 'v3', consent_ts: ts }). هذا يجعل أي تسجيل محدد قابلاً للتتبع إلى إدخال سجل موافقة بعينه، وهو المعيار الذي حدده EDPB والمعيار الذي يجب على الناشرين اعتماده بصرف النظر عن مكان عملهم. نشر مقيَّد بشكل صحيح، مقترن بإخفاء إدخال يقمع بشكل افتراضي ومسار حذف يُفعَّل عند السحب، هو ما يجعل Hotjar جزءاً قابلاً للدفاع عنه من مجموعة الأبحاث بدلاً من أن يكون مسؤولية امتثال.