html - redireccionar - Redirigir los dispositivos móviles a una versión alternativa de mi sitio
redireccionar a sitio movil (9)
Tenemos una versión alternativa de nuestro sitio web lista para dispositivos móviles. El contenido que servimos es diferente y funciona bien.
¿Cuál es la mejor manera de detectar qué versión servir? No tenemos una lista de todos los dispositivos móviles, por lo que usar el encabezado de agente de usuario es complicado ya que podemos perder algo.
Pensamos en usar el ancho de pantalla del dispositivo, pero ¿qué sucede si el dispositivo móvil no admite javascript? ¿Cómo olemos esto?
De acuerdo con Skaffman, otra base de datos de dispositivos es DeviceAtlas . Aunque tienes que pagar por esto.
No creo que haya una manera buena / elegante de detectar si el usuario tiene activado su javascript.
En mi opinión, lo mejor es enumerar al agente de usuario: here hay una lista de agente de usuario, que parece bastante completa (en francés, por desgracia).
Podría usar una base de datos de descripción de dispositivos (como WURFL ) que reconocerá el dispositivo cliente desde los encabezados de solicitud. Luego, puede consultar esa base de datos para decidir si el dispositivo puede manejar su sitio (por ejemplo, es compatible con javascript o si la pantalla es lo suficientemente grande) antes de decidir si redirigirlos a un sitio diferente.
No menciona su entorno, pero WURFL suministra API para Java y PHP, y quizás también otras. Si no hay una API suministrada, aún puede usar WURFL, pero tendrá que analizar y procesar los datos XML usted mismo.
Sencillo:
<link rel="alternate" media="handheld" href="WEBSITE HERE">
Pon eso en la sección de cabeza.
Si el dispositivo no es compatible con JS, es mejor considerar una solución del lado del servidor, y la API WURFL puede ayudar en esa dirección.
A veces queremos evitar problemas con este tipo de enfoque (como un proxy inverso que almacena páginas en caché y no permitimos que se redirija a la versión móvil) o necesitamos una solución rápida, ya que hoy en día casi todos los dispositivos recientes son compatibles con JS.
Por este motivo, escribí un script JS llamado "redirection_mobile.js" que detecta al agente de usuario del navegador y lo redirige a la versión móvil de su sitio si está accediendo desde un dispositivo móvil.
En algunos casos, desea redireccionar desde un dispositivo móvil a una versión de escritorio (como con un enlace "Ir al sitio principal"), el script lo manejará y, una vez que finalice su sesión, volverá a acceder a la versión móvil. .
Puede encontrar el código fuente en github aquí http://github.com/sebarmeli/JS-Redirection-Mobile-Site y puede leer más detalles en uno de mis artículos aquí:
Si está buscando redireccionar a un sitio móvil con JavaScript, noté que WURFL también tiene una solución que le permitirá realizar la detección del lado del servidor con JavaScript.
<script type=''text/javascript'' src="//wurfl.io/wurfl.js"></script>
te quedarás con un objeto JSON que se parece a:
{
"complete_device_name":"Apple iPhone 6",
"is_mobile":true,
"form_factor":"Smartphone"
}
A continuación, puede utilizar esto:
if (WURFL.is_mobile === true) {
window.location.replace("http://.com");
}
Solo pon esto en tu encabezado:
<script type="text/javascript">
<!--
if (screen.width <= 700) {
window.location = "http://www.mobile-site.com";
}
//-->
</script>
Casi todas las pantallas de las computadoras están por encima del umbral de 700px pero esta vara puede ser cambiada. No hay un teléfono o tableta que esté por encima de los 700px (al menos no conozco ninguno), por lo que todos los dispositivos móviles se redireccionarán a su sitio móvil.
Una alternativa a WURFL es Mobile Detect , una clase de PHP para detectar:
- Tableta
- Móvil
- iOs
- Androide
- Navegadores
- Y mucho más
Entonces, en caso de que WURFL no haga lo que necesita, siempre puede verificar esto.
media = "dispositivo portátil" no funciona con los teléfonos inteligentes modernos como el iPhone, que pretende ser un navegador de escritorio (utiliza el tipo de medio de pantalla).
http://detectmobilebrowser.com/ Free & open source, tiene un comprobador de agente de usuario móvil completo disponible en muchos idiomas: javascript, php, asp.net, ruby, etc.