تكامل تحليلات GTM
يمكنك ربط أي حاوية Google Tag Manager (GTM) بـ Wink عن طريق إدخال معرف حاوية GTM الخاص بها في بوابة Wink. بمجرد الربط، يتم تحميل الحاوية تلقائيًا لممتلكاتك وتقرأ أحداث الحجز الخاصة بـ Wink مباشرة — مما يغطي رحلة الضيف الكاملة من البحث حتى إتمام الحجز. حالة استخدام شائعة هي حاوية Sojern لإعادة الاستهداف والإعلانات، لكن أي حاوية GTM تعمل بنفس الطريقة.
ما الذي تحتاج إلى فعله
Section titled “ما الذي تحتاج إلى فعله”-
احصل على معرف حاوية GTM الخاص بك
احصل على معرف حاوية GTM (بصيغة
GTM-XXXXXXX). إذا كانت من شريك مثل Sojern، اطلب معرف حاوية GTM تحديدًا — فهو يختلف عن معرف البكسل أو الوسم. -
أدخله في بوابة Wink
سجّل الدخول إلى app.wink.travel، اختر حسابك، وافتح إعدادات التخصيص. في قسم التحليلات والتكاملات، الصق معرف حاوية GTM في حقل معرف حاوية GTM واحفظ. أصبح التكامل الآن نشطًا.
-
أكد مع مزود الخدمة الخاص بك
إذا كانت الحاوية من شريك مثل Sojern، أخبر مدير حسابك أن التكامل نشط. يمكنهم التحقق من جانبهم أن الوسوم تعمل بشكل صحيح على
wink.travelلممتلكاتك وأن البيانات تتدفق إلى حسابك.
ما الذي يفعله Wink من جانبنا
Section titled “ما الذي يفعله Wink من جانبنا”لأجل الشفافية، إليك ما يقوم Wink بتكوينه لجعل هذا التكامل يعمل:
- يوجد حقل معرف حاوية GTM في قسم التحليلات والتكاملات ضمن إعدادات التخصيص الخاصة بك. عند إدخال معرف الحاوية، يتحقق Wink من الصيغة (
GTM-XXXXXXX) ويخزنه بأمان مقابل ممتلكاتك. - في كل صفحة تكون ممتلكاتك نشطة فيها على Wink، يتم حقن الحاوية مباشرة في الصفحة — مشاركة
window.dataLayerالخاص بـ Wink — بحيث يتم تحميلها جنبًا إلى جنب مع حاوية Wink الخاصة دون الاعتماد على أي إعداد إضافي. يحدث هذا تلقائيًا، دون عمل خاص لكل ممتلك من فريق Wink. - يتم تحميل الحاوية بشكل غير متزامن، لذا لا تؤثر على أداء تحميل الصفحة لضيوفك.
- يعمل تتبع Wink الخاص وحاويتك بالتوازي، يقرآن من نفس
dataLayerالمشترك. كل حدث حجز يتتبعه Wink متاح لحاويتك في نفس الوقت. - عندما لا يتم عرض ممتلكاتك — على سبيل المثال، عندما يتصفح الضيف فندقًا مختلفًا على Wink — لا يتم تحميل الحاوية، لذا تستقبل فقط البيانات المتعلقة بممتلكاتك.
- يتم إطلاق حدث الحجز المكتمل (
purchase) في المتصفح على صفحة الشكر. معرف حاوية GTM هو صندوق أسود — لا يمكن لـ Wink افتراض ما هي الوسوم داخله — لذا لا يتصل Wink بجوجل نيابة عنك من خوادمه. بدلاً من ذلك، أي وسم GA4 أو تحويل موجود في حاويتك يستقبل حدثpurchaseمن جهة العميل، تمامًا مثل كل حدث حجز آخر. وبما أن مزود الدفع يعيد توجيه متصفح الضيف بعيدًا ثم يعود، يعيد Wink ربط جلسة التحليلات التي انقطعت بسبب إعادة التوجيه قبل إطلاقpurchase، لذلك يُنسب البيع إلى زيارة الضيف الأصلية بدلاً من احتسابه كجلسة جديدة.
مرجع DataLayer
Section titled “مرجع DataLayer”يدفع Wink أحداثًا متوافقة مع GA4 إلى dataLayer طوال رحلة الضيف. تقرأ حاوية GTM الخاصة بك من نفس dataLayer المشترك، لذا أي مشغل أو متغير تقوم بتكوينه يمكنه الوصول إلى كل الخصائص الموضحة أدناه.
كل حدث يتبع هيكل التجارة الإلكترونية المحسنة القياسي لـ GA4: سلسلة event على المستوى الأعلى وكائن ecommerce. قبل كل دفع، يمسح Wink حمولة التجارة الإلكترونية السابقة لمنع تسرب بيانات قديمة إلى المشغلات الجديدة.
أحداث رحلة الحجز
Section titled “أحداث رحلة الحجز”تُطلق هذه الأحداث تلقائيًا أثناء تنقل الضيف عبر مسار الحجز. قم بتكوين مشغلات GTM الخاصة بك كمشغلات حدث مخصص تطابق أسماء الأحداث أدناه.
| الخطوة | الحدث | متى يُطلق |
|---|---|---|
| 1 | view_item_list | تحميل شبكة أو قائمة مخزون الفنادق |
| 2 | view_item | عرض الضيف لصفحة ممتلك محددة |
| 3 | add_to_cart | إضافة الضيف لغرفة إلى عربة التسوق |
| 4 | begin_checkout | تحميل صفحة الدفع / الخروج |
| 5 | add_payment_info | اختيار الضيف لطريقة الدفع |
| 6 | login | توثيق الضيف عبر تسجيل الدخول الموحد |
| 7 | purchase | تأكيد الحجز |
| 8 | refund | إلغاء الحجز |
view_item_list
Section titled “view_item_list”يُطلق عند عرض شبكة أو قائمة مخزون الفنادق.
{ "event": "view_item_list", "ecommerce": { "item_list_id": "featured_hotels", "item_list_name": "Featured Hotels", "items": [ ] }}view_item
Section titled “view_item”يُطلق عند عرض الضيف لممتلك محدد.
{ "event": "view_item", "ecommerce": { "currency": "USD", "value": 299.00, "items": [ ] }}add_to_cart
Section titled “add_to_cart”يُطلق عند إضافة الضيف لغرفة إلى العربة.
{ "event": "add_to_cart", "ecommerce": { "currency": "USD", "value": 299.00, "items": [ ] }}begin_checkout
Section titled “begin_checkout”يُطلق عند تحميل صفحة الدفع / الخروج.
{ "event": "begin_checkout", "ecommerce": { "currency": "USD", "value": 299.00, "coupon": "SUMMER10", "items": [ ] }}coupon موجود فقط عند تطبيق رمز خصم.
add_payment_info
Section titled “add_payment_info”يُطلق عند اختيار أو تأكيد الضيف لطريقة الدفع.
{ "event": "add_payment_info", "ecommerce": { "currency": "USD", "value": 299.00, "coupon": "SUMMER10", "payment_type": "STRIPE", "items": [ ] }}payment_type يتم تعبئته من نوع مستحوذ الدفع. coupon موجود فقط عند تطبيق رمز خصم.
يُطلق عند توثيق الضيف عبر تسجيل الدخول الموحد.
{ "event": "login", "ecommerce": { "method": "IAM" }}purchase
Section titled “purchase”يُطلق عند تأكيد الحجز.
{ "event": "purchase", "ecommerce": { "currency": "USD", "transaction_id": "bc-a1b2c3d4", "value": 299.00, "coupon": "SUMMER10", "shipping": 0.00, "tax": 0.00, "items": [ { "item_id": "rr-xyz789", "item_name": "Deluxe Ocean Suite", "item_brand": "Grand Resort", "item_category": "GUEST_ROOM", "price": 299.00, "quantity": 1, "property_id": "prop-abc123", "property_name": "Grand Resort Maldives", "property_brand": "Grand Collection", "property_chain": "Luxury Hotels International", "city_name": "Malé", "country_code": "MV", "start_date": "2026-06-01", "end_date": "2026-06-05", "num_adults": 2, "num_children": 0, "cancellation_policy": "Refundable", "rate_plan_id": "rp-summer2026", "room_rate_id": "rr-xyz789", "room_rate_name": "Summer Escape — Bed & Breakfast", "num_perks": 2, "room_location": "Overwater", "room_view": "Ocean", "room_classification": "Suite" } ] }}transaction_id هو معرف عقد الحجز الفريد. coupon وshipping وtax موجودة فقط عند الاقتضاء.
refund
Section titled “refund”يُطلق عند إلغاء الحجز.
{ "event": "refund", "ecommerce": { "currency": "USD", "transaction_id": "bc-a1b2c3d4", "value": 299.00, "coupon": "SUMMER10", "shipping": 0.00, "tax": 0.00, "items": [ ] }}transaction_id يطابق حدث purchase لنفس الحجز. coupon وshipping وtax موجودة فقط عند الاقتضاء.
خصائص العنصر
Section titled “خصائص العنصر”جميع الأحداث التي تتضمن مصفوفة items تشترك في نفس مخطط العنصر. كل خاصية اختيارية ما لم تُذكر كـ “مطلوبة”.
حقول GA4 القياسية
Section titled “حقول GA4 القياسية”هذه الحقول مفهومة أصلاً من GA4 وتظهر في تقارير التجارة الإلكترونية القياسية دون أي إعداد إضافي.
| الخاصية | النوع | مطلوب | الوصف |
|---|---|---|---|
item_id | نص | نعم | معرف فريد للغرفة أو المنتج |
item_name | نص | — | اسم الغرفة أو المنتج |
affiliation | نص | — | اسم التابع أو البائع |
coupon | نص | — | رمز القسيمة المطبق على العنصر |
currency | نص | — | رمز العملة ISO 4217 (مثل USD) |
creative_name | نص | — | اسم الإبداع المستخدم في الترويج |
creative_slot | نص | — | موقع الإبداع في الترويج |
discount | رقم | — | مبلغ الخصم المطبق |
index | رقم | — | الموقع في القائمة (مبني على 1) |
item_brand | نص | — | اسم الفندق أو العلامة التجارية |
item_category | نص | — | نوع المنتج — مثل GUEST_ROOM، ACTIVITY، ATTRACTION، MEETING_ROOM، RESTAURANT، SPA |
item_list_id | نص | — | معرف القائمة التي ينتمي إليها العنصر |
item_list_name | نص | — | اسم العرض للقائمة |
location_id | نص | — | إحداثيات جغرافية للممتلك |
price | رقم | — | سعر الوحدة |
promotion_id | نص | — | معرف الترويج |
promotion_name | نص | — | اسم العرض للترويج |
quantity | رقم | — | الكمية (الافتراضي 1) |
معلمات مخصصة على مستوى العنصر
Section titled “معلمات مخصصة على مستوى العنصر”تحمل هذه المعلمات سياق الحجز الخاص بـ Wink. لا تظهر تلقائيًا في تقارير GA4 — يجب تسجيل كل منها كبُعد مخصص على مستوى العنصر في خاصية GA4 الخاصة بك قبل أن تظهر في الاستكشافات أو التقارير القياسية. راجع الأبعاد المخصصة في GA4 أدناه لإرشادات الإعداد.
| الخاصية | النوع | الوصف |
|---|---|---|
property_id | نص | معرف ممتلك Wink |
property_name | نص | اسم العرض للممتلك |
property_brand | نص | العلامة التجارية التي ينتمي إليها الممتلك |
property_chain | نص | السلسلة التي ينتمي إليها الممتلك |
property_url_name | نص | اسم URL صديق للممتلك |
city_name | نص | المدينة التي يقع فيها الممتلك |
country_code | نص | رمز البلد ISO 3166-1 alpha-2 |
start_date | نص | تاريخ الوصول بصيغة YYYY-MM-DD |
end_date | نص | تاريخ المغادرة بصيغة YYYY-MM-DD |
num_adults | رقم | عدد البالغين في الحجز |
num_children | رقم | عدد الأطفال في الحجز |
cancellation_policy | نص | أحد: Refundable، Non-Refundable، Refundable-With-Restrictions، Non-Refundable-With-Restrictions |
rate_plan_id | نص | معرف خطة السعر |
room_rate_id | نص | معرف سعر الغرفة المحدد |
room_rate_name | نص | اسم العرض لسعر الغرفة |
num_perks | رقم | عدد المزايا المشمولة مع السعر |
room_location | نص | وصف موقع الغرفة (مثل Overwater، Garden) |
room_view | نص | وصف منظر الغرفة (مثل Ocean، City) |
room_classification | نص | تصنيف الغرفة أو الدرجة (مثل Suite، Standard) |
bed_type | نص | تكوين السرير للغرفة (مثل King، Twin) |
الأبعاد المخصصة في GA4
Section titled “الأبعاد المخصصة في GA4”يتجاهل GA4 معلمات العنصر المخصصة في التقارير حتى تقوم بتسجيلها صراحة كبُعد مخصص على مستوى العنصر. تحتاج فقط إلى تسجيل المعلمات التي تنوي استخدامها في التقارير — لا تحتاج إلى تسجيل جميع العشرين.
-
افتح التعريفات المخصصة
في GA4، اذهب إلى الإدارة (أيقونة الترس أسفل اليسار) → اختر الممتلك الخاص بك → عرض البيانات → التعريفات المخصصة.
-
إنشاء بُعد مخصص جديد
انقر على إنشاء أبعاد مخصصة.
-
املأ تفاصيل البُعد
- اسم البُعد — التسمية المقروءة التي تظهر في تقارير GA4 (انظر الجدول أدناه)
- النطاق — اختر عنصر
- معامل الحدث — اسم المعامل بالضبط كما يظهر في dataLayer (انظر الجدول أدناه)
- الوصف — اختياري لكن يُنصح به
-
احفظ وكرر
انقر على حفظ، ثم كرر لكل معامل تريد تتبعه.
استخدم الجدول التالي كمرجع عند إنشاء الأبعاد المخصصة. يجب أن يتطابق قيمة معامل الحدث بالضبط — GA4 حساس لحالة الأحرف.
| اسم البُعد | معامل الحدث | النوع |
|---|---|---|
| معرف الممتلك | property_id | نص |
| اسم الممتلك | property_name | نص |
| علامة الممتلك | property_brand | نص |
| سلسلة الممتلك | property_chain | نص |
| اسم URL للممتلك | property_url_name | نص |
| اسم المدينة | city_name | نص |
| رمز البلد | country_code | نص |
| تاريخ الوصول | start_date | نص |
| تاريخ المغادرة | end_date | نص |
| عدد البالغين | num_adults | رقم |
| عدد الأطفال | num_children | رقم |
| سياسة الإلغاء | cancellation_policy | نص |
| معرف خطة السعر | rate_plan_id | نص |
| معرف سعر الغرفة | room_rate_id | نص |
| اسم سعر الغرفة | room_rate_name | نص |
| عدد المزايا | num_perks | رقم |
| موقع الغرفة | room_location | نص |
| منظر الغرفة | room_view | نص |
| تصنيف الغرفة | room_classification | نص |
| نوع السرير | bed_type | نص |
أحداث إضافية متاحة
Section titled “أحداث إضافية متاحة”الأحداث التالية متاحة في dataLayer الخاص بـ Wink لكنها ليست جزءًا من مسار الحجز القياسي. قد تُطلق بواسطة تفاعلات أخرى على المنصة.
add_to_wishlist
Section titled “add_to_wishlist”{ "event": "add_to_wishlist", "ecommerce": { "currency": "USD", "value": 299.00, "items": [ ] }}remove_from_cart
Section titled “remove_from_cart”{ "event": "remove_from_cart", "ecommerce": { "currency": "USD", "value": 299.00, "items": [ ] }}select_item
Section titled “select_item”{ "event": "select_item", "ecommerce": { "item_list_id": "featured_hotels", "item_list_name": "Featured Hotels", "items": [ ] }}view_cart
Section titled “view_cart”{ "event": "view_cart"}لا تتضمن حمولة ecommerce مع هذا الحدث.
view_promotion
Section titled “view_promotion”{ "event": "view_promotion", "ecommerce": { "creative_name": "Summer Banner", "creative_slot": "hero", "promotion_id": "promo_001", "promotion_name": "Summer Sale", "items": [ ] }}select_promotion
Section titled “select_promotion”{ "event": "select_promotion", "ecommerce": { "creative_name": "Summer Banner", "creative_slot": "hero", "promotion_id": "promo_001", "promotion_name": "Summer Sale", "items": [ ] }}search
Section titled “search”{ "event": "search", "ecommerce": { "search_term": "beachfront resort" }}select_content
Section titled “select_content”{ "event": "select_content", "ecommerce": { "content_type": "hotel", "content_id": "prop_12345" }}{ "event": "share", "ecommerce": { "method": "copy_link", "content_type": "hotel", "item_id": "prop_12345" }}sign_up
Section titled “sign_up”{ "event": "sign_up", "ecommerce": { "method": "email" }}generate_lead
Section titled “generate_lead”{ "event": "generate_lead", "ecommerce": { "currency": "USD", "value": 0.00 }}join_group
Section titled “join_group”{ "event": "join_group", "ecommerce": { "group_id": "group_abc" }}earn_virtual_currency
Section titled “earn_virtual_currency”{ "event": "earn_virtual_currency", "ecommerce": { "virtual_currency_name": "WinkPoints", "value": 100 }}spend_virtual_currency
Section titled “spend_virtual_currency”{ "event": "spend_virtual_currency", "ecommerce": { "virtual_currency_name": "WinkPoints", "value": 50, "item_name": "Room Upgrade" }}level_start
Section titled “level_start”{ "event": "level_start", "ecommerce": { "level_name": "Gold" }}level_end
Section titled “level_end”{ "event": "level_end", "ecommerce": { "level_name": "Gold", "success": true }}level_up
Section titled “level_up”{ "event": "level_up", "ecommerce": { "level": 2, "character": "traveler" }}post_score
Section titled “post_score”{ "event": "post_score", "ecommerce": { "score": 980, "level": 2, "character": "traveler" }}unlock_achievement
Section titled “unlock_achievement”{ "event": "unlock_achievement", "ecommerce": { "achievement_id": "first_booking" }}tutorial_begin
Section titled “tutorial_begin”{ "event": "tutorial_begin", "ecommerce": {}}tutorial_complete
Section titled “tutorial_complete”{ "event": "tutorial_complete", "ecommerce": {}}virtualPageView
Section titled “virtualPageView”هذا حدث مخصص من Wink — ليس جزءًا من مجموعة أحداث GA4 القياسية. يُدفع عند كل تنقل صفحة ويحمل سياق الجهاز والجلسة. لا يتضمن كائن ecommerce.
{ "event": "virtualPageView", "device": "Desktop", "deviceAgent": "Mozilla/5.0 ...", "os": "MacOS", "path": "/hotels/grand-resort", "title": "Grand Resort — Wink", "userId": "user_abc123", "startDate": "2026-06-01", "endDate": "2026-06-05", "guests": "2", "rooms": "1"}| الخاصية | الوصف |
|---|---|
device | نوع الجهاز المكتشف — Desktop، Android، iPhone، iPad، أو ما شابه |
deviceAgent | سلسلة وكيل المستخدم الخام |
os | نظام التشغيل المكتشف — Windows، MacOS، Linux، UNIX |
path | مسار الصفحة الحالي |
title | عنوان الصفحة الحالي |
userId | معرف المستخدم المصادق عليه (يُحذف عند عدم تسجيل الدخول) |
startDate | تاريخ الوصول من جلسة البحث الحالية |
endDate | تاريخ المغادرة من جلسة البحث الحالية |
guests | عدد الضيوف من جلسة البحث الحالية |
rooms | عدد الغرف من جلسة البحث الحالية |
