احمد عطية5 نشر 2 يناير 2021 أرسل تقرير نشر 2 يناير 2021 لدي 4 اندكس ب 4 لغات اريد عندما يكون الزائر من امريكا يظهر اندمس بلغه معينه من الشرق الاوسط يظهر بلغه اخري وهكذا .... شكرا لكم اقتباس
1 محمد الملواني نشر 2 يناير 2021 أرسل تقرير نشر 2 يناير 2021 السلام عليكم في البداية تحتاج الى تحديد الدول التي تريدها وليكن 4 "فرنسا - المانيا - أمريكا - السعودية " و تجعل لغة واحده منهم افتراضية الافتراضية "الرئيسية اللغة العربية مثلا " فاذا كان الزائر من الهند او الصين مثلا سيجدها عربية يمكنك تحديد أي لغة تريد الشرق الأوسط هو مجموعة من الدول لذلك يجب إضافة كل دولة على حدا تحديد منطقة الزائر و بلدة عن طريق geolocation ip address api navigator.language استخدام الصفحة الرئيسية ذات اللغة الافتراضية للتوجيه فاذا كان ضمن الدول ذات اللغات و الصفحات المخصصة تم تحويله اليها او يظل في الصفحة الافتراضية geolocation هو خاصية من خواص المتصفح تسمح بطلب اظهار الموقع من المستخدم و يشترط فيها إعطاء الزائر تصريحا بعرض موقعه var x = document.getElementById("demo"); function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else { x.innerHTML = "Geolocation is not supported by this browser."; } } function showPosition(position) { x.innerHTML = "Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude; } ip address api Edit in JSFiddle JavaScript HTML Result /** * Get the user IP throught the webkitRTCPeerConnection * @param onNewIP {Function} listener function to expose the IP locally * @return undefined */ function getUserIP(onNewIP) { // onNewIp - your listener function for new IPs //compatibility for firefox and chrome var myPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection; var pc = new myPeerConnection({ iceServers: [] }), noop = function() {}, localIPs = {}, ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g, key; function iterateIP(ip) { if (!localIPs[ip]) onNewIP(ip); localIPs[ip] = true; } //create a bogus data channel pc.createDataChannel(""); // create offer and set local description pc.createOffer(function(sdp) { sdp.sdp.split('\n').forEach(function(line) { if (line.indexOf('candidate') < 0) return; line.match(ipRegex).forEach(iterateIP); }); pc.setLocalDescription(sdp, noop, noop); }, noop); //listen for candidate events pc.onicecandidate = function(ice) { if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) return; ice.candidate.candidate.match(ipRegex).forEach(iterateIP); }; } // Usage getUserIP(function(ip){ document.getElementById("ip").innerHTML = 'Got your IP ! : ' + ip + " | verify in http://www.whatismypublicip.com/"; }); ثم استخدام مكتبة للبحث عن البلد عن طريق ال ip مثل https://www.ultratools.com/tools/geoIp و تتميز انها لا تحتاج الى تصريح من المستخدم navigator.language يساعدك هذا أيضا على تحديد لغة الزائر الخاص بك و تحديد اللغات الافتراضية و لكن ليس على حسب الدولة فمن الممكن ان أكون مقيم بدولة عربية و المتصفح باللغة الإنجليزية او أكون في دولة اجنبية و المتصفح بلغتي الام و هي العربية و هذه الأداة افضل طالما هدفك هو اللغة ليس المكان و هنا تحدد اللغات و ليس البلدان و الاماكن navigator.language var language = window.navigator.userLanguage || window.navigator.language; alert(language); //works IE/SAFARI/CHROME/FF اذا كان لديك المزيد من الاستفسارات برجاء اطرحها هنا 1 اقتباس
0 Abdulhamid Hamsho2 نشر 2 يناير 2021 أرسل تقرير نشر 2 يناير 2021 مرحبًا @Ahmed Bek Atiaa، يمكنك ذلك من خلال أخذ الـ API الذي قام الدخول به الشخص إلى الموقع الخاص بك. وتعيين اللغات التي سوف تظهر تبعًا للـ API. يوجد الكثير من المواقع التي يمكنها تحديد الـ API-IP القادم منها الشخص مثل هذا الموقع https://ip-api.com/، من ثم يمكنك إضافت root من أجل عملية الـ Reindex ليتم توجيه الشخص إلى الـ index الخاص باللغة لديك. اقتباس
السؤال
احمد عطية5
لدي 4 اندكس ب 4 لغات اريد عندما يكون الزائر من امريكا يظهر اندمس بلغه معينه
من الشرق الاوسط يظهر بلغه اخري وهكذا ....
شكرا لكم
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.