نظرة عامة
يتتبّع نظام تتبُّع الإحالات الناجحة الإحالات الناجحة التي تبدأها Google
من خلال إحدى عمليات التكامل مع "مركز الإجراءات". ويساعد ذلك في الحفاظ على سلامة عملية التكامل وتشغيلها، لأنّها قد تؤثّر في الترتيب على صفحات معيّنة. في كل مرة تنشئ فيها Google action_link، يتم تعديل عنوان URL المحدّد ليتضمّن مَعلمة طلب بحث فريدة: rwg_token. يمكنك تخزين الرمز المميّز وعرض القيم المناسبة عندما يُكمل المستخدم حجزًا.
لإكمال عملية التكامل، اتّبِع الخطوات التالية:
- حلِّل
rwg_tokenوخزِّنه. - حلِّل معلومات التاجر وخزِّنها.
- اعرض
rwg_tokenوقيمتَيmerchant_changed. - اختبِر ميزة تتبُّع الإحالات الناجحة وتأكَّد من أنّها تعمل بشكلٍ سليم.
تحليل rwg_token وتخزينه
لإكمال عملية التكامل، عليك جمع rwg_token وتخزينه لمدة تصل إلى 30 يومًا من تاريخ الإحالة الأولية من Google. إنّ قيمة rwg_token هي سلسلة مشفّرة تحتوي على بيانات وصفية حول الرابط ومعلومات التاجر التي أنشأت action_link هذا.
تحليل الرمز المميّز
عند توجيه المستخدم إلى صفحة الحجز، تتم إضافة rwg_token جديد إلى عنوان URL المقدَّم. في صفحة الحجز، عليك تحليل قيمة الرمز المميّز.
يوضّح المثال التالي كيفية تحليل rwg_token لتتبُّع الإحالات الناجحة على مستوى الجهاز من خلال متصفّح.
const rwgToken = new URLSearchParams(location.search).get('rwg_token') || undefined;
تخزين الرمز المميّز
عند تخزين rwg_token، يمكنك تنفيذ ميزة تتبُّع الإحالات الناجحة على مستويَين مختلفَين:
- على مستوى الجهاز
- على مستوى المستخدِم
يمكنك تخزين الرمز المميّز على أي مستوى، ولكن عليك تخزينه لمدة 30 يومًا بعد الإحالة الأولية.
يوضّح المثال التالي ميزة تتبُّع الإحالات الناجحة على مستوى الجهاز. يمكنك تخزين قيم الرمز المميّز في متصفّح باستخدام ملف تعريف الارتباط التابع للطرف الأول. يفترض هذا المثال أنّك حلّلت قيمة الرمز المميّز في متغيّر. احرص على تعديل rootdomain.com باستخدام نطاقك.
if (rwgToken !== undefined) {
document.cookie =
"_rwgToken=" + rwgToken + "; max-age=2592000; domain=rootdomain.com; path=/";
}
في كل مرة تنشئ فيها Google action_link قدّمته من خلال الخلاصات، يتم تعديل عنوان URL ليتضمّن مَعلمة طلب بحث فريدة: rwg_token. عليك تخزين هذا الرمز المميّز وإعادة تمريره كجزء من حدث الإحالة الناجحة.
التخزين على مستوى الجهاز
يتضمّن مستوى الجهاز استخدام ملفات تعريف الارتباط في المتصفّح أو مساحة التخزين المحلية أو مساحة التخزين المحلية للتطبيق أو أي طريقة أخرى يمكنها الاحتفاظ بالرمز المميّز لوقت اكتمال تحديد المصدر الذي يبلغ 30 يومًا. يتم تخزين الرمز المميّز محليًا على جهاز المستخدِم. لذلك، لا يمكن أن يحدّد حدث الإحالة الناجحة المصدر بشكلٍ صحيح إذا كان المستخدِم:
- يغيّر الجهاز الذي يستخدمه.
- يمحو مساحة التخزين المحلية أو ملفات تعريف الارتباط.
- يستخدم متصفّحًا خاصًا أو متصفّحًا متخفيًا.
عند استخدام ميزة تتبُّع الإحالات الناجحة على مستوى الجهاز، عليك إعادة تنفيذ حدث الإحالة الناجحة على كل جهاز متوافق، بما في ذلك الأجهزة الجوّالة.
التخزين على مستوى المستخدِم
يحتفظ مستوى المستخدِم بالرمز المميّز في قاعدة بيانات تطبيقك، من خلال نظام إحصاءات من جهة الخادم أو أنظمة أخرى من جهة الخادم. يتم تخزين الرمز المميّز من جهة الخادم. لذلك، يستمر حدث الإحالة الناجحة في تحديد المصدر بشكلٍ صحيح بعد أن يسجّل المستخدِم الدخول مرة أخرى.
عند استخدام ميزة تتبُّع الإحالات الناجحة على مستوى المستخدِم استنادًا إلى بنية نظامك، يمكنك تنفيذ حدث الإحالة الناجحة مرة واحدة من جهة الخادم وإعادة استخدامه على جميع الأجهزة المتوافقة.
إعادة تحميل الرمز المميّز
عندما تحيل Google مستخدمًا إلى التاجر نفسه، يتم استبدال الرمز المميّز الحالي المخزَّن مسبقًا بالرمز المميّز الجديد من أحدث إحالة. بعد استبدال الرمز المميّز، تتم إعادة ضبط وقت اكتمال تحديد المصدر الذي يبلغ 30 يومًا لتخزين الرمز المميّز، ويتم تحديد مصدر أي إحالات ناجحة جديدة لهذا التاجر على الرمز المميّز الأخير.
يُرجى الاطّلاع على متطلبات تحديد مصدر الإحالات الناجحة لـ مزيد من التفاصيل.
تحليل معلومات التاجر وتخزينها
عند توجيه المستخدم إلى صفحة الحجز، عليك تنفيذ المنطق الذي يمكنه العثور على تفاصيل التاجر وتسجيلها. عادةً، يضيف الشركاء بيانات وصفية للتاجر أو merchant_id إلى روابط الإجراءات ويستخدمون ذلك لتحديد معلومات التاجر وتخزينها.
ننصحك بتخزين merchant_id أو المعرّف المحدّد مع rwg_token. عندما يؤكّد المستخدم حجزًا، يمكنك الرجوع إلى التاجر قبل إرسال طلب الإحالة الناجحة الكامل. على غرار تخزين الرمز المميّز، عليك حفظ تفاصيل التاجر مع الرمز المميّز لمدة 30 يومًا بعد الإحالة الأولية.
يعدّل المثال التالي rwg_token الذي تم تخزينه سابقًا. يفترض هذا المثال أنّك حلّلت معلومات التاجر من البيانات الوصفية في عنوان URL المقدَّم وحفظتها إما كـ merchant_id أو طابقتها مع merchant_id حالي.
// Store the rwgToken and merchantId in your cookie and set the cookie
// expiration date to 30 days.
if (typeof rwgToken !== 'undefined') {
document.cookie =
"_rwgToken=" + rwgToken + "; _merchantId=" + merchantId + "; max-age=2592000;domain=rootdomain.com; path=/";
}
عرض rwg_token وقيمتَي merchant_changed
عندما يُكمل المستخدم حجزًا يبدأ من إحالة action_link، عليك إرسال طلب HTTP POST إلى نقطة نهاية الإحالة الناجحة. هناك نقطتا نهاية:
- بيئة التشغيل الفعلي: https://www.google.com/maps/conversion/collect
- بيئة وضع الحماية: https://www.google.com/maps/conversion/debug/collect
عند إرسال حدث إحالة ناجحة، عليك تضمين rwg_token المخزَّن وقيمة merchant_changed تساوي 1 أو 2. لمزيد من التفاصيل عن
merchant_changed، يُرجى الاطّلاع على عرض قيمة تغيير التاجر.
يجب أن يكون نص طلب POST عبارة عن عنصر مشفّر بتنسيق JSON:
{
"conversion_partner_id": "<partnerId>",
"rwg_token": "<rwg_token_val>",
"merchant_changed": "1|2"
}
{
"conversion_partner_id": "XXXXXXX",
"rwg_token": "AFd1xnHrJWKcjtriCyB5j3QL0bzbmLdcg1N1f5cJuSNVhteYjuOJz18Au6GIAT0tjHkw6fkUJKcarafV45b3c_gl7uT_o8HMcg==",
"merchant_changed": "2"
}
يتضمّن المثال التالي ميزة تتبُّع الإحالات الناجحة على مستوى الجهاز باستخدام ملف تعريف ارتباط على جهاز المستخدِم، مكتوب بلغة JavaScript:
const partnerId = XXXXXXXXXX;
const endpoint = `https://www.google.com/maps/conversion/collect`;
// Retrieve the value of the rwgToken stored in the browser's cookie
const match = document.cookie.match(new RegExp('(?:^| )_rwgToken=([^;]+)'));
const storedRwgToken = match ? match[1] : undefined;
// Send Conversion event with decoded token, verify any special characters
// are sent properly.
if (storedRwgToken !== undefined) {
fetch(endpoint, {
method: "POST",
body: JSON.stringify({
conversion_partner_id: partnerId,
rwg_token: decodeURIComponent(storedRwgToken),
merchant_changed: merchantChanged
})
});
}
عرض قيمة تغيير التاجر
تُستخدَم قيمة merchant_changed لتحديد ما إذا تم تغيير التاجر من التاجر الذي تمّت إعادة التوجيه إليه في البداية. من الشائع تغيير التجار إذا كانت صفحتك المقصودة ضمن منصة تتضمّن تجارًا آخرين. في هذه الحالة، إذا أحالت Google مستخدمًا إلى منصتك وقرّر الانتقال إلى تاجر مختلف لإكمال حجز، عليك معرفة أنّه تمّت إحالة ناجحة مع تاجر منفصل. يمكنك استخدام قيمة منطقية لتحديد تغيير التاجر، ولكن ليس تفاصيل التاجر.
عند تحديد القيمة التي تريد تعيينها لـ merchant_changed، عليك أخذ
التاجر الأصلي الذي تم حفظه في
تحليل معلومات التاجر وتخزينها. تحقَّق مما إذا تم تغيير التاجر، وعيِّن القيمة حسب متطلباتك.
- المتطلبات: عندما يغادر المستخدم الموقع الإلكتروني للتاجر الأصلي و
يُكمل عملية شراء من خلال منصتك مع تاجر مختلف.
- قيمة تغيير التاجر:
1
- قيمة تغيير التاجر:
- المتطلبات: عندما يُكمل المستخدم معاملة من خلال التاجر الأصلي.
- قيمة تغيير التاجر:
2
- قيمة تغيير التاجر:
اختبار ميزة تتبُّع الإحالات الناجحة والتأكّد من أنّها تعمل بشكلٍ سليم
تستخدم حالات الاختبار التالية رموزًا مميّزة للاختبار مقدَّمة في الـ
قسم "رموز الاختبار المميّزة"، وهي تهدف إلى إرشادك خلال
جميع السيناريوهات المختلفة التي يمكن أن تؤدي إلى حدث إحالة ناجحة. يضمن ذلك تخزين الرمز المميّز بشكلٍ مناسب، وضبط قيمة merchant_changed بشكلٍ صحيح، وإرسال حدث الإحالة الناجحة عند الاقتضاء.
استخدِم روابط لاتّخاذ إجراء أو عناوين URL لصفحة الحجز المقدَّمة في خلاصاتك، ونفِّذ كل إطار اختبار عن طريق إلحاق رموز الاختبار المميّزة بنهاية عنوان URL. احرص على استخدام نافذة متصفّح خاص أو متصفّح متخفّي، لأنّ ذلك سيمحو أي رموز مميّزة حالية مرتبطة بالمستخدم الحالي ويمنحك صفحة نظيفة للعمل عليها.
| حالة الاختبار | وصف الاختبار | User Flow | النتائج المتوقعة |
|---|---|---|---|
| 1 | يُكمل المستخدم حجزًا لم يبدأ على Google. | ينتقل المستخدم مباشرةً إلى صفحة الحجز بدون أن تحيله Google أو بدون إحالة حالية. يجب ألا يؤدي ذلك إلى أي حدث إحالة ناجحة. | ما مِن حدث إحالة ناجحة لأنّ المستخدم لم يسبق له زيارة صفحة الحجز أو لم تحله Google. |
| 2 | يُكمل المستخدم حجزًا بدأ على Google. | يعثر المستخدم على التاجر من خلال Google، ويتم إحالته إلى صفحة الحجز ويُكمل حجزًا. | سيتم إرسال حدث إحالة ناجحة باستخدام الرمز المميّز (أ) وقيمة تغيير التاجر تساوي 2 لأنّ Google أحالت المستخدم إلى صفحة الحجز. |
| 3 | يبدأ المستخدم (الذي تمّت إحالته من Google) عملية الحجز، ولكنّه يغادر الجلسة قبل إكمال الحجز. ملاحظة: أبقِ هذه الجلسة مفتوحة للاختبارَين 4 و5. |
تتم إحالة المستخدم إلى صفحة الحجز، ولكن تنتهي الجلسة ولا يُكمل حجزًا. | ما مِن إحالة ناجحة لأنّ المستخدم لم يُكمل حجزًا، ولكن يجب تخزين الرمز المميّز (ب) لمدة 30 يومًا. |
| 4 | يعود المستخدم إلى صفحة الحجز، بدون أن يكون قد تمّت إحالته من Google، ويُكمل حجزًا. ملاحظة: يجب ألا يتضمّن عنوان URL لعملية الحجز `rwg_token`. |
يعود المستخدم إلى صفحة الحجز بعد الاختبار رقم 4. يجب تخزين الرمز المميّز (ب) لمدة 30 يومًا، ويجب أن يعرض أي إحالة ناجحة خلال هذه الفترة حدث إحالة ناجحة. | سيتم إرسال حدث إحالة ناجحة باستخدام الرمز المميّز (ب) وقيمة تغيير التاجر تساوي 2 لأنّ المستخدم يعود إلى صفحة الحجز بعد إحالة سابقة من Google. |
| 5 | يُكمل المستخدم حجزًا جديدًا بدأ على Google بعد الاختبار رقم 4. | إذا عاد المستخدم إلى صفحة الحجز باستخدام إحالة من Google بعد إحالة سابقة من Google، تتم إعادة ضبط فترة التخزين التي تبلغ 30 يومًا ويحلّ رمز مميّز جديد الرمز المميّز (ج) محلّ الرمز القديم الرمز المميّز (ب). بعد ذلك، سيتم تحديد مصدر جميع الإحالات الناجحة المستقبلية على أنّها من الرمز المميّز (ج). | سيتم إرسال حدث إحالة ناجحة باستخدام الرمز المميّز (ج) وقيمة تغيير التاجر تساوي 2 لأنّ المستخدم أكمل الحجز واستبدل الرمز المميّز الجديد الرمز المميّز الذي تم تخزينه سابقًا. |
إذا كانت لديك منصة تتيح للمستخدمين الدفع مع تاجر مختلف، اختبِر ما يلي.
| حالة الاختبار | وصف الاختبار | User Flow | النتائج المتوقعة |
|---|---|---|---|
| 6 | تحيل Google المستخدم إلى صفحة الحجز ويُكمل حجزًا مع تاجر مختلف. | تحيل Google المستخدم إلى صفحة الحجز، ويتم استخدام الرمز المميّز (أ)، ولكن قبل إكمال الحجز، ينتقل المستخدم إلى صفحة مختلفة ويُكمل الحجز مع تاجر يختلف عن التاجر الذي تمّت الإحالة إليه في البداية. | سيتم إرسال حدث إحالة ناجحة لأنّ المستخدم أكمل حجزًا بدأ بإحالة من Google باستخدام الرمز المميّز (أ) وقيمة تغيير التاجر تساوي 1 لأنّ المستخدم أكمل الحجز لدى تاجر مختلف عن التاجر الذي تمّت الإحالة إليه. |
أثناء الاختبار، أرسِل طلب HTTP POST إلى نقطة نهاية الإحالة الناجحة. هناك نقطتا نهاية:
- بيئة التشغيل الفعلي: https://www.google.com/maps/conversion/collect
- بيئة وضع الحماية: https://www.google.com/maps/conversion/debug/collect
رموز الاختبار المميّزة
لاختبار ميزة تتبُّع الإحالات الناجحة، أضِف أحد رموز الاختبار المميّزة التالية إلى نهاية روابط الإجراءات أو عناوين URL لصفحة الحجز التي تقدّمها في خلاصاتك.
الرمز المميّز (أ):
rwg_token=AFd1xnHrJWKcjtriCyB5j3QL0bzbmLdcg1N1f5cJuSNVhteYjuOJz18Au6GIAT0tjHkw6fkUJKcarafV45b3c_gl7uT_o8HMcg%3D%3D
الرمز المميّز (ب):
rwg_token=AE37R_gte8WCEaytMalsIr9agWQRLuN8199RsVhU2WoRKRvcZ0eBTD8cFvnfUZh-GY0IvY-zjS3W9KWAmy3WDiWXbVvQRZyzMQ%3D%3D
الرمز المميّز (ج):
rwg_token=AE37R_jmAP-UgWNApkxwdlX5M2z1UBGuUzHZ63YWmRWeTjRJKxfSD1mzJ4joLnB11MHrBULuisjP-9I64LnBJDXyCc_CIJSCPg%3D%3D
عند إرسال أحداث الإحالات الناجحة الناجحة، يمكنك الاطّلاع عليها مجمّعة في "مركز الإجراءات" ضِمن لوحة بيانات تتبُّع الإحالات الناجحة.
![]()
متطلبات تحديد مصدر الإحالات الناجحة
إنّ المعيار المطلوب من Google لتحديد مصدر الإحالات الناجحة هو فترة إحالة تبلغ 30 يومًا لأي تفاعل مع رابط لاتّخاذ إجراء، في أي متجر.
تعني فترة الإحالة هذه أنّ Google يمكنها توقُّع إرسال حدث إحالة ناجحة في أي من السيناريوهات التالية:
- ينقر المستخدم على رابط لاتّخاذ إجراء مكان ويُجري طلبًا لدى التاجر نفسه في الجلسة نفسها. قيمة تغيير التاجر = 2.
- ينقر المستخدم على رابط لاتّخاذ إجراء مكان ثم يعود من قناة مختلفة خلال وقت اكتمال تحديد المصدر الذي يبلغ 30 يومًا لإجراء طلب لدى التاجر نفسه. قيمة تغيير التاجر = 2.
- ينقر المستخدم على رابط لاتّخاذ إجراء مكان ثم يُجري طلبًا في متجر مختلف، إما خلال الجلسة نفسها أو جلسة مختلفة خلال وقت اكتمال تحديد المصدر الذي يبلغ 30 يومًا. قيمة تغيير التاجر = 1.
بالإضافة إلى ذلك، تتوقّع Google إرسال أحداث الإحالات الناجحة من أي جهاز يمكن للمستخدم الوصول إليه من خلال رابط لاتّخاذ إجراء. تشمل هذه الأجهزة ما يلي:
- تطبيقات الويب على الكمبيوتر أو الأجهزة الجوّالة
- تطبيقات الأجهزة الجوّالة، إما من خلال رابط لصفحة معيّنة في التطبيق أو من خلال هدف التطبيق المسجَّل لنطاقك
إذا تم تخزين الرمز المميّز على مستوى المستخدِم، من المتوقّع أن تقدّم تحديد المصدر من عدة أجهزة. لمزيد من المعلومات، يُرجى الاطّلاع على التخزين على مستوى المستخدِم. في هذه الحالة، يجب أن يبدأ المستخدم الذي ينقر على رابط إجراء من الكمبيوتر ثم يُكمل المعاملة على الجهاز الجوّال باستخدام حساب المستخدِم نفسه حدث إحالة ناجحة.
إذا تم تخزين الرمز المميّز حصريًا على مستوى الجهاز، مثل ملفات تعريف الارتباط في المتصفّح، ليس من المتوقّع أن تقدّم تحديد المصدر من عدة أجهزة. في هذه الحالة، يمكن أن يكون لكل جهاز رمز مميّز منفصل يتم الاحتفاظ به، إذا نقر المستخدم على رابط لاتّخاذ إجراء على هذا الجهاز، ويمكن أن يتّبع كل جهاز قواعد تحديد المصدر بشكلٍ منفصل.