نظرة عامة
يتتبّع نظام تتبُّع الإحالات الناجحة الإحالات الناجحة التي بدأتها 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": "AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ==",
"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. احرص على استخدام نافذة متصفّح خاصة أو متخفّية، لأنّ ذلك سيؤدي إلى محو أي رموز مميّزة حالية مرتبطة بالمستخدم الحالي، ما يتيح لك البدء من جديد.
| حالة الاختبار | وصف الاختبار | مسار المستخدم | النتيجة المتوقّعة |
|---|---|---|---|
| 1 | يكمل المستخدم حجزًا لم يتم إجراؤه على Google. | ينتقل المستخدم مباشرةً إلى صفحة الحجز بدون أن تحيله Google أو بدون إحالة حالية. من المفترض ألّا يؤدي ذلك إلى أي حدث إحالة ناجحة. | لم يتم تسجيل أيّ حدث إحالة ناجحة لأنّ المستخدِم لم يسبق له زيارة صفحة الحجز أو لم تتم إحالته من خلال Google. |
| 2 | يكمل المستخدم عملية حجز بدأت على Google. | يعثر المستخدم على التاجر من خلال Google، ويتم توجيهه إلى صفحة الحجز ويكمل عملية الحجز. | سيتم إرسال حدث إحالة ناجحة مع الرمز المميّز (أ) والقيمة 2 لـ تغيير التاجر لأنّ Google أحال المستخدم إلى صفحة الحجز. |
| 3 | يبدأ مستخدم (قادم من Google) عملية الحجز، ولكنّه يتوقّف عن استخدام الجلسة قبل إكمال الحجز. ملاحظة: أبقِ هذه الجلسة مفتوحة للاختبارَين 4 و5. |
يتمّت إحالة مستخدم إلى صفحة الحجز، ولكن تنتهي الجلسة ولا يكمل عملية الحجز. | لم يتم إجراء أي إحالة ناجحة لأنّ المستخدم لم يُكمل عملية حجز، ولكن يجب تخزين الرمز المميّز B لمدة 30 يومًا. |
| 4 | يعود المستخدم إلى صفحة الحجز، بدون أن يكون قد وصل إليها من Google، ويكمل عملية الحجز. ملاحظة: يجب ألا يتضمّن عنوان URL الخاص بمسار الحجز rwg_token. |
يعود المستخدم إلى صفحة الحجز بعد الاختبار رقم 4. يجب تخزين الرمز المميّز B لمدة 30 يومًا، ويجب أن يؤدي أي إحالة ناجحة خلال هذه الفترة إلى عرض حدث إحالة ناجحة. | سيتم إرسال حدث إحالة ناجحة مع الرمز المميّز ب والقيمة 2 لـ تغيير التاجر لأنّ المستخدم يعود إلى صفحة الحجز بعد إحالة سابقة من Google. |
| 5 | يكمل المستخدم حجزًا جديدًا مصدره Google بعد الاختبار رقم 4. | إذا عاد المستخدم إلى صفحة الحجز باستخدام إحالة من Google بعد إحالة سابقة من Google، ستتم إعادة ضبط فترة التخزين البالغة 30 يومًا وسيحلّ رمز مميّز جديد الرمز المميز C محلّ الرمز القديم الرمز المميز B. بعد ذلك، سيتم تحديد مصدر جميع الإحالات الناجحة المستقبلية على أنّه الرمز المميز C. | سيتم إرسال حدث إحالة ناجحة مع الرمز المميز C والقيمة 2 الخاصة بـ merchant changed لأنّ المستخدم أكمل الحجز وتم استبدال الرمز المميز الجديد بالرمز المميز المخزّن سابقًا. |
إذا كانت لديك منصة تتيح للمستخدمين الدفع لدى تاجر مختلف، اختبِر ما يلي.
| حالة الاختبار | وصف الاختبار | مسار المستخدم | النتيجة المتوقّعة |
|---|---|---|---|
| 6 | يحيل محرّك بحث Google مستخدمًا إلى صفحة الحجز الخاصة بك، ويكمل المستخدم عملية حجز لدى تاجر مختلف. | يحيل Google مستخدمًا إلى صفحة الحجز الخاصة بك، ويتم استخدام الرمز المميّز A، ولكن قبل إكمال الحجز، ينتقل المستخدم إلى صفحة أخرى ويكمل الحجز لدى تاجر يختلف عن التاجر الذي أحاله في الأصل. | سيتم إرسال حدث إحالة ناجحة لأنّ المستخدم أكمل حجزًا بدأ بإحالة من Google باستخدام الرمز المميز A والقيمة 1 للحقل تغيّر التاجر لأنّ المستخدم أكمل الحجز لدى تاجر مختلف عن التاجر الذي تمت الإحالة منه. |
أثناء الاختبار، أرسِل طلب HTTP POST إلى نقطة نهاية التحويل. هناك نقطتا نهاية:
- بيئة الإنتاج: https://www.google.com/maps/conversion/collect
- بيئة وضع الحماية: https://www.google.com/maps/conversion/debug/collect
رموز الاختبار
لاختبار تتبُّع الإحالات الناجحة، أضِف إحدى الرموز المميزة الاختبارية التالية إلى نهاية روابط الإجراءات أو عناوين URL الخاصة بصفحة الحجز التي تقدّمها في خلاصاتك.
الرمز المميّز أ:
rwg_token=AJKvS9WeONmWKEwjG0--HdpzMq0yAVNL8KMxbb44QtbcxMhSx_NUud5b8PLUBFehAIxOBO-iYRIJOknEFkIJmdsofdVJ6uOweQ%3D%3D
الرمز المميّز B:
rwg_token=AJKvS9U2QfiQanHFQrlJxBjD0AyFany3qpaJVEWOcY4nHqY_UkLYFFDj6RIa-EXS1iEmV8gtFPG6v1cU1jnusJK66ijXXnaqkQ%3D%3D
الرمز المميز C:
rwg_token=AJKvS9VwInjZ_hGZPvBz0COVWJ5oFDzocFt9hGi7TMurlo2l71uiXP48PspPUMmRnqCUDE1mF_A5H_dMV78cBTF8jIfSQK6lEA%3D%3D
عند إرسال أحداث الإحالات الناجحة، يمكنك الاطّلاع عليها مجمّعة في "مركز الإجراءات" ضمن لوحة بيانات تتبُّع الإحالات الناجحة.
![]()
متطلبات تحديد مصدر الإحالات الناجحة
إنّ المعيار العادي الذي تشترطه Google لتحديد مصدر الإحالة الناجحة هو وقت اكتمال تحديد المصدر يبلغ 30 يومًا لأي تفاعل مع رابط لاتّخاذ إجراء خاص بمكان معيّن، في أي متجر.
تعني فترة تحديد المصدر هذه أنّه يمكن أن تتوقّع Google إرسال حدث إحالة ناجحة في أيّ من السيناريوهات التالية:
- ينقر المستخدم على رابط لاتّخاذ إجراء في مكان ويقدّم طلبًا لدى التاجر نفسه في الجلسة نفسها. قيمة التغيير التي أجراها التاجر = 2.
- ينقر مستخدم على رابط لاتّخاذ إجراء في مكان معيّن، ثم يعود من قناة مختلفة خلال وقت اكتمال تحديد المصدر البالغ 30 يومًا لإجراء طلب لدى التاجر نفسه. قيمة التغيير التي أجراها التاجر = 2.
- ينقر المستخدم على رابط لاتّخاذ إجراء في مكان معيّن، ثم يقدّم طلبًا في متجر آخر، إما خلال الجلسة نفسها أو خلال جلسة مختلفة ضمن وقت اكتمال تحديد المصدر الذي يبلغ 30 يومًا. قيمة التغيير التي يقدّمها التاجر = 1.
بالإضافة إلى ذلك، تتوقّع Google إرسال أحداث الإحالات الناجحة من أي جهاز يمكن للمستخدم الوصول إليه من خلال رابط لاتّخاذ إجراء في مكان. تشمل هذه الأجهزة ما يلي:
- تطبيقات الويب على أجهزة الكمبيوتر أو الأجهزة الجوّالة
- تطبيقات الأجهزة الجوّالة، إما من خلال رابط لصفحة في التطبيق أو من خلال تسجيل نية التطبيق لنطاقك
إذا تم تخزين الرمز المميّز على مستوى المستخدم، من المتوقّع أن تقدّم خدمة تحديد المصدر من عدة أجهزة. لمزيد من المعلومات، اطّلِع على التخزين على مستوى المستخدم. في هذه الحالة، يجب أن يبدأ المستخدم حدث إحالة ناجحة إذا اتّبع رابط إجراء من الكمبيوتر المكتبي ثم أكمل المعاملة على الجهاز الجوّال باستخدام حساب المستخدم نفسه.
إذا تم تخزين الرمز المميّز حصريًا على مستوى الجهاز، مثلاً في ملفات تعريف الارتباط الخاصة بالمتصفّح، لن يُطلب منك تقديم تحديد المصدر من عدة أجهزة. في هذه الحالة، يمكن أن يكون لكل جهاز رمز مميّز محفوظ بشكل منفصل، إذا نقر المستخدم على رابط لاتّخاذ إجراء على هذا الجهاز، ويمكن أن يتبع كل جهاز قواعد تحديد المصدر بشكل منفصل.