Watch-IP

اقتراح لغة ومنطقة مع الحفاظ على اختيار المستخدم

استخدم سياق الزائر المتاح لتقديم نقطة انطلاق مفيدة للغة والمنطقة والعملة — ثم تذكَّر تفضيل الزائر الصريح بدلًا من إعادة اشتقاقه من الموقع الجغرافي في كل زيارة.

أولوية التفضيلات

تحقق أولًا من وجود اختيار محفوظ صريح — ملف تعريف ارتباط، أو إعداد حساب، أو معامل استعلام حدَّده الزائر بنفسه. ارجع إلى اقتراح مُشتق من عنوان IP فقط عند عدم وجود اختيار صريح، ولا تسمح مطلقًا لاستدعاء جديد لـ /v1/geo بالكتابة فوق تفضيل سبق للزائر أن حدَّده.

بلد IP مقابل لغة المتصفح

يجيب هذان المصدران عن سؤالين مختلفين وقد يتعارضان. فقد يظهر زائر فرنكوفوني يتصل من كندا بالقيمة country: "CA" من /v1/geo، بينما تعكس ترويسة Accept-Language في متصفحه (المستخدَمة في locale.suggestedLocale) بالفعل القيمة "fr" — اجمع بين country و locale.suggestedLocale الخاصة بالاستجابة نفسها بدلًا من تخمين اللغة من رمز البلد وحده، وعامل النتيجة كاقتراح لا كوجهة إعادة توجيه.

حقول الإعداد المحلي والعملة

توفر geo.locale.suggestedLocale و measurementSystem و firstDayOfWeek و dateFormat إعدادات افتراضية إقليمية للتنسيق؛ ويوفر geo.currency تخمينًا مبدئيًا للعملة. كل هذه القيم اقتراحات مبدئية مُشتقة من البلد وترويسات الطلب، وليست تفضيلًا موثَّقًا.

عند عدم توفر موقع جغرافي

الحقول locale و currency و country قابلة لأن تكون فارغة (null) — إذ يُعيد الطلب الوارد من شبكة يتعذر تحليلها القيمة null بدلًا من تخمين. ارجع إلى اللغة والتنسيق الافتراضيين لموقعك بدلًا من تعطيل الصفحة انتظارًا لقيمة قد لا تصل.

حافظ على ثبات روابط اللغة وقابليتها للفهرسة

قدِّم مبدِّل لغة مرئيًا بدلًا من إعادة توجيه تلقائية في كل زيارة. تجعل إعادة التوجيه الدائمة القائمة على IP نسخة اللغة غير قابلة للوصول عبر رابط ثابت، سواء لمحركات البحث أو للزوار المتصلين بشبكة غير متوقعة، مثل VPN أو اتصال فندق.

ما لا يضمنه هذا

البلد المُشتق من عنوان IP ليس دليلًا على تفضيل اللغة أو الجنسية أو التواجد الفعلي — فقد يظهر المسافر، أو مستخدم VPN، أو شبكة الشركة المشتركة جميعهم في مكان لا يرتبط فعليًا بلغة الزائر المفضَّلة. عامل كل اقتراح كأمر قابل للتراجع.

صفحات ذات صلة