سؤال

لدي صفحة ويب وقد طُلب مني مؤخرًا إنشاء إصدار الهاتف المحمول لها، والآن بعد أن انتهيت من ذلك، طُلب مني إجراء إعادة توجيه تلقائية بحيث إذا انتقل المستخدم إلى صفحة الويب من خلال المساعد الرقمي الشخصي/iPhone/الهاتف الذكي/إلخ يتم توجيهه تلقائيًا إلى m.website.com ولكن ليس لدي أي فكرة عن كيفية القيام بذلك =/ لقد جربت بعض لغات php وjavascripts التي وجدتها باستخدام google ولكن لم يساعدني أي شيء حتى الآن.هل يمكنكم يا رفاق؟

هل كانت مفيدة؟

المحلول

تحقق من WURFL وبناء معيد توجيه 302 مقابل كلاء العضو تطابق قائمتها للمتصفح الجوال سلاسل عامل المستخدم.

وأو مجرد إلقاء نظرة على اي فون في عامل المستخدم وإعادة توجيه تلك لموقع اي فون الخاص بك. الأمر المتصفحات أخرى من هذا القبيل صغيرة حصة السوق هو لا يستحق استهدافهم. اي فون هو 67٪ من حركة المرور المحمول HTML على شبكة الإنترنت. هل يمكن أن تفعل هذا في جافا سكريبت على صفحة الويب الخاصة بك.

نصائح أخرى

ولقد نشرت النسخة الأخيرة من "فلتر اباتشي موبايل"، وهذا مشروع مفتوح المصدر وفي أول 8 أشهر، وأكثر من 1100 التحميل من سورس وأنا افترض نفسه من CPAN.

وتصفية أباتشي موبايل تسمح لك بالوصول إلى WURFL من أي لغة برمجة، وليس فقط جافا و PHP التي تستخدم عادة لمواقع الويب الجوال الديناميكية.

وحدة بالكشف عن الجهاز المحمول ويمر قدرات WURFL إلى تطبيق ويب أخرى كما متغيرات البيئة. ويمكن أيضا أن تستخدم لتغيير الصور على الطاير للتكيف مع حجم شاشة الجهاز المحمول. انها محاولة واسمحوا لي أن أعرف رأيك.

لمزيد من المعلومات: http://www.idelfuschini.it /it/apache-mobile-filter-v2x.html

لقد كتبت نص JS يسمى "redirection_mobile.js"لحل هذه المشكلة.يكتشف وكيل المستخدم ويعيد التوجيه إلى إصدار الهاتف المحمول إذا كنت تصل إلى موقع من جهاز محمول.

في بعض الحالات، تريد إعادة التوجيه من جهاز محمول إلى إصدار سطح المكتب (مثل الرابط "انتقل إلى الموقع الرئيسي")، وسيتعامل البرنامج النصي مع ذلك وبمجرد الانتهاء من جلستك، ستتمكن من الوصول إلى إصدار الهاتف المحمول مرة أخرى .

يمكنك العثور على الكود المصدري على جيثب هنا https://github.com/sebarmeli/JS-Redirection-Mobile-Site ويمكنك قراءة المزيد من التفاصيل في أحد مقالاتي هنا:

http://blog.sebarmeli.com/2010/11/02/how-to-redirect-your-site-to-a-mobile-version-through-javascript/

وربما لو كنت قائمة التعليمات البرمجية التي لا تعمل، يمكن تقديم مزيد من المساعدة.

وإذا كنت قد حصلت بي، كشف وكيل العضو يعمل بشكل جيد في معظم الحالات.

< ?php
$browser = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
if ($browser == true) { header(”Location: http://www.example.com/“); }
}
?>

وأيضا، وهذا يبدو وكأنه مغفل من:      تحديد مختلفة الهواتف النقالة وإعادة توجيه لمختلف المواقع

وكان طرح سؤال مماثل جدا وأجاب هنا:

كيف يمكنني تحديد ما اذا كان جهاز محمول مع PHP؟

<اقتباس فقرة>   وقد

والأجهزة النقالة تقليديا   الكشف عن طريق مقارنة HTTP   رأس وكيل المستخدم ضد قائمة   المعروف سلاسل UA النقالة. رواية   نهج بدلا يحاول للكشف عن   وجود OS سطح المكتب - أي شيء   التي وجدت أن لا يكون نظام التشغيل سطح المكتب   يجب أن يكون ثم النقال.

     

وهذا يؤدي إلى أقل بكثير كاذبة   ايجابيات.

     

ولقد كتبت عن وظيفة مع نموذج التعليمات البرمجية   في بيثون هنا:

     

http://notnotmobile.appspot.com

والكشف عن ما إذا كان الجهاز هو سطح المكتب - إذا لم يكن ثم إعادة توجيه إلى موقع الويب على الجوال

وابتهاج،

وجون

وبمجرد الحصول على هاتفك المحمول فرعي انشاء، تأكد من الرجوع إلى هذه المقالة من قائمة بصرف النظر الذي يصف كيف تتفاعل الأجهزة المحمولة إلى السمة CSS، وسائل الإعلام = "يده". لسوء الحظ، ليس كل رد فعل على حد سواء.

http://www.alistapart.com/articles/returnofthemobilestylesheet

وو"فلتر اباتشي موبايل" هي واحدة من وحدات من "أباتشي وحدة التسجيل في" البوابة (<لأ href = "http://modules.apache.org/search.php؟id=1787" يختلط = "نوفولو noreferrer "> http://modules.apache.org/search.php؟id=1787 )

http://detectmobilebrowser.com ، وجدت أنه هو أسرع وأسهل وسيلة. أنه يعمل بشكل جيد جدا. هذا الموقع الذي يولد النصوص الخادم تلقائيا (PHP، بيرل، بيثون، كولد فيوجن، اباتشي، مسج، الخ) التي يكشف متصفح الجوال والموجهات وفقا لذلك. يمكنك نسخ فقط ولصق الشفرة في مكان ما في فهرس الملف الخاص بك.

وهذا شيء من جافا سكريبت أيضا قد تساعد:

<script>
    if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|BB10|IEMobile|Opera Mini/i.test(navigator.userAgent) ) //Specify the mobile devices that you would like this if statement to apply to. 
    {
        image_y = document.getElementById('bodyID'); //Get the ID of the body and assign it to a variable.
        image_y.parentNode.removeChild(image_y); //Remove the body to prevent anything loading on the screen in case there are issues with the window location redirect.
        window.location = "mobile.html"; //Re-assign the window location to a new html page that is caters for the redirect. 
    }
</script>

وأنا وضعت في بداية الجسم HTML.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top