web-dev-qa-db-fra.com

Comment mon site peut-il détecter les téléphones mobiles et orienter les visiteurs vers un domaine mobile?

Ma question est que lorsque l'utilisateur entre sur le site Web: http://www.example.com, il ira simplement automatiquement à http://www.example.mobi comment puis-je faire cela .. y a-t-il une technique derrière cela.

Puis-je le faire via cPanel, etc.? Les liens de tutoriels sont les bienvenus.

6
Appz Venture

Pour rediriger uniquement le trafic mobile vers un domaine mobile, il existe plusieurs options: -

Simple

Basé sur la résolution de l'écran (mon préféré car il est assez évolutif)

<script type="text/javascript">
<!--
if (screen.width <= 699) {
document.location = "www.mobileurl.com";
}
//-->
</script>

Contrôle plus granulaire

http://detectmobilebrowsers.mobi/ offre un contrôle plus complet avec un logiciel gratuit script qui gère la redirection vers un ou plusieurs emplacements en fonction du périphérique (ne vous laissez pas berner par tous les boutons d'achat!)

require_once('[mobile_device_detect.php][4]');
mobile_device_detect(
  'http://iphone-url.com',
  'http://ipad-url.com',
  'http://Android-url.com',
  'http://opera-mini-url.com',
  'http://blackberry-url.com',
  'http://Palm-os-url.com',
  'http://mobile-url.com',
  'http://mobile-browsers-url.com',
  'http://desktop-url.com');

Autoriser le trafic de différents appareils à être envoyé à différentes URL.

Contrôle extrêmement granulaire

En dehors de cela, il existe bases de données de description de périphérique comme WURFL qui offre un contrôle encore plus approfondi en fournissant une base de données pouvant être interrogée à l'aide des informations d'en-tête de périphérique et du trafic redirigé en conséquence. ..

4
toomanyairmiles

La première méthode (screen.width<=799) n'est pas fiable. Sur mon Android, je reçois une largeur d'écran de 540 lorsque le téléphone est maintenu verticalement (vue Portrait), mais si je le tourne sur le côté (vue Paysage), j'obtiens une largeur = 960. Mieux (peut-être pas encore totalement fiable) pourrait être de rebondir sur le mobile si la dimension soit est petite:

if ((screen.width <= 699) || (screen.height <= 699)) {}
4
Rap Porter