توضّح هذه الصفحة كيفية تنفيذ الميزات المتعلّقة بكيفية تسجيل المستخدمين الدخول أو الخروج باستخدام ميزة "نقرة واحدة من Google".
تسجيل دخول المستخدمين تلقائيًا
تتيح ميزة Google One Tap تسجيل الدخول تلقائيًا، ما يوفّر تجربة مستخدم سلسة من خلال إزالة الخطوات اليدوية التي يجب على المستخدمين اتّخاذها عند العودة إلى موقعك الإلكتروني. لا يحتاج المستخدمون إلى تذكّر حساب Google الذي اختاروه أثناء زيارتهم الأخيرة، ما يقلل من فرص إنشاء حسابات مكررة غير ضرورية على منصتك.
تهدف ميزة "تسجيل الدخول التلقائي" إلى استكمال زر "تسجيل الدخول باستخدام حساب Google" ومربّعات حوار One Tap. تم تصميم هذه الميزة ليتم استخدامها على مستوى موقعك الإلكتروني بالكامل، مع إتاحة الاشتراك اليدوي أو تبديل الحسابات فقط بعد أن يسجّل المستخدم خروجه من موقعك الإلكتروني.
لإجراء تسجيل الدخول التلقائي، يجب استيفاء الشروط التالية:
- يجب أن يكون المستخدمون قد سجّلوا الدخول أولاً إلى حساب Google الخاص بهم، و
- سبق أن منحوا موافقتهم على مشاركة الملف الشخصي لحساباتهم مع تطبيقك
- عند استخدام FedCM، أجرى محاولة تسجيل دخول واحدة فقط في آخر 10 دقائق. يتم عرض ميزة "بنقرة واحدة" عند تكرار محاولات تسجيل الدخول خلال هذه الفترة.
- عند استخدام FedCM، يطلب Chrome من المستخدمين إعادة تأكيد رغبتهم في تسجيل الدخول إلى الموقع الإلكتروني باستخدام حساب Google في كل مثيل من Chrome، حتى إذا وافق المستخدم على الموقع الإلكتروني قبل طرح FedCM. قد يؤثر هذا التغيير في معدّل الإحالات الناجحة على موقعك الإلكتروني الحالي الذي يستخدم ميزة "بنقرة واحدة". في تحديث الإصدار M121 من Chrome، يؤدي تحسين ميزة "تسجيل الدخول التلقائي" إلى الحدّ من مشكلة انخفاض معدّل الإحالات الناجحة.
بالنسبة إلى الصفحات التي تم تفعيل ميزة "تسجيل الدخول التلقائي" فيها، وإذا تم استيفاء هذه الشروط، يتم تلقائيًا عرض بيانات اعتماد الرمز المميّز لتعريف المستخدم بدون أي تفاعل من المستخدم. في حال عدم استيفاء هذه الشروط، وحتى إذا كانت ميزة "تسجيل الدخول التلقائي" مفعَّلة على الصفحة، سيتم تلقائيًا توجيه المستخدم إلى مسار "نقرة واحدة" لتسجيل الدخول أو الموافقة. إذا كان لدى المستخدم حسابات متعددة على Google وزار موقعك الإلكتروني، عليه أولاً تسجيل الدخول إلى حساب واحد على Google وتقديم موافقته لهذا الحساب.
يمكنك قياس معدّل نجاح ميزة "تسجيل الدخول تلقائيًا" باستخدام القيمة auto في حقل select_by ضمن عنصر CredentialResponse الذي يتم عرضه عند معالجة الاستجابة في دالة ردّ اتصال JavaScript (callback أو data-callback). لا يتم تضمين select_by في طلبات HTTP POST المُرسَلة إلى login_uri أو data-login_uri.
لتفعيل تسجيل الدخول التلقائي، أضِف data-auto_select="true" إلى الرمز البرمجي، كما هو موضّح في المقتطف التالي:
<div id="g_id_onload"
data-client_id="YOUR_GOOGLE_CLIENT_ID"
data-login_uri="https://your.domain/your_login_endpoint"
data-auto_select="true">
</div>
تسجيل الخروج
عندما يسجّل المستخدم خروجه من موقعك الإلكتروني، يمكن توجيهه إلى صفحة يتم فيها عرض طلب Google One Tap تلقائيًا. لهذا الإعداد، يجب حظر الاختيار التلقائي. وإلا، سيتم تسجيل دخول المستخدم تلقائيًا مرة أخرى، ما يؤدي إلى تجربة مستخدم في حلقة مفرغة.
استخدام FedCM
لتحسين تجربة المستخدم، هناك فترة هدوء مدتها 10 دقائق بين كل محاولة تسجيل دخول تلقائي. وخلال هذه الفترة الزمنية، يتم عرض طلب "نقرة واحدة" بدلاً من ذلك. يجب أن ينقر المستخدمون صراحةً على ميزة "بنقرة واحدة" لتسجيل الدخول.
بدون FedCM
لمنع الاختيار التلقائي بعد تسجيل المستخدم الخروج، أضِف اسم الفئة
g_id_signout إلى جميع روابط وأزرار تسجيل الخروج. اطّلِع على مقتطف الرمز التالي:
<div class="g_id_signout">Sign Out</div>
يمكن أيضًا استخدام مقتطف رمز JavaScript التالي لتسجيل الخروج:
const button = document.getElementById('signout_button');
button.onclick = () => {
google.accounts.id.disableAutoSelect();
}
لمنع حدوث حلقة تكرار في تجربة المستخدم، يتم تخزين حالة تسجيل خروج المستخدم في ملف تعريف ارتباط باسم
g_state يتم ضبطه من خلال مكتبة Google Identity Services. يتم ضبط نطاق ملف تعريف الارتباط تلقائيًا على نطاق الصفحة الحالية. إذا تم عرض ميزة "بنقرة واحدة" على النطاق الرئيسي والنطاقات الفرعية، يجب أن يكون ملف تعريف الارتباط الخاص بالحالة مرئيًا في جميع نطاقاتك. استخدِم السمة data-state_cookie_domain لضبط نطاق ملف تعريف الارتباط g_state على نطاقك الرئيسي. على سبيل المثال، أضِف
data-state_cookie_domain="example.com" إلى العنصر g_id_onload
لنطاق رئيسي باسم example.com ونطاق فرعي باسم webapp.example.com.
إذا كانت لديك خدمة تراقب جميع ملفات تعريف الارتباط المستخدَمة في نطاقك،
عليك إعلامها بملف تعريف الارتباط g_state.
إذا كنت لا تريد تحميل مكتبة العميل على صفحات ما بعد تسجيل الدخول، استخدِم هذه الحلول لمنع حدوث تجربة مستخدم بحلقة ميتة بعد تسجيل الخروج:
- عند تسجيل الخروج، أعِد توجيه المستخدمين إلى صفحة (مثلاً،
https://example.com/logged_out) لا تظهر فيها ميزة "بنقرة واحدة" أو حيث تكون ميزة تسجيل الدخول التلقائي غير مفعَّلة دائمًا. - عند تسجيل الخروج، أضِف مَعلمة إلى عنوان URL. مثلاً:
logged_out=1عند عرض ميزة "بنقرة واحدة" من خلال JavaScript API، تحقَّق من مَعلمة عنوان URL وأوقِف ميزة "تسجيل الدخول تلقائيًا" في حال توفّرها.
تجارب المستخدمين الرئيسية
صفحة تسجيل الدخول التلقائي
استخدام FedCM
يمكن للمستخدمين إغلاق طلب ميزة "نقرة واحدة" من خلال النقر على الزر X. لأسباب تتعلق بتسهيل الاستخدام، تتم مشاركة رمز مميّز للمعرّف مع موقعك الإلكتروني حتى إذا نقر المستخدمون على الزر X.
لتحسين تجربة المستخدم، هناك فترة هدوء مدتها 10 دقائق بين كل محاولة تسجيل دخول تلقائي. وخلال هذه الفترة الزمنية، يتم عرض طلب "نقرة واحدة" بدلاً من ذلك. يجب أن ينقر المستخدمون صراحةً على ميزة "بنقرة واحدة" لتسجيل الدخول.
بدون FedCM

إذا لم ينقر المستخدمون على الزر إلغاء خلال 5 ثوانٍ، تتم مشاركة رمز مميّز للمعرّف مع موقعك الإلكتروني.
عند إلغاء تسجيل الدخول، استنادًا إلى عدد جلسات Google النشطة، يتم عرض صفحة محدد الحساب أو صفحة المستخدم المكرر الزيارة.
- جلسات Google المتعددة

- جلسات Google الفردية
