Pregunta

¿Qué son las cadenas de excepción "estado del arte" para redireccionar iPhone, iPad, Android, tablet, etc. a los usuarios un diseño diferente?

Es decir, me di cuenta en el

System -> Configuration -> Design

interfaz de usuario, hay una característica que me permite crear una expresión regular que se compara con la cadena de agente de usuario. Lo que estoy buscando es lo que las personas están utilizando cadenas específicas para redirigir las computadoras no son de escritorio a un tema móvil y / o una respuesta diferente?

O existe un enfoque mejor que el enfoque de "excepción" a tomar en estos días?

¿Fue útil?

Solución

Hay dos versiones diferentes que hemos utilizado. La primera es la misma que @Marius hizo mención de menos la específica mención "Fennec" ( que ya no está en la cadena de UA de FF móvil). Lo obtuve de fuentes similares:

iPhone|iPod|BlackBerry|Palm|Googlebot-Mobile|Mobile|mobile|mobi|Windows Mobile|Safari Mobile|Android|Opera Mini

El segundo es el mismo, pero con el término "móvil" retira para que la versión móvil de un sitio no se sirve a la IPAD, que incluye móvil en el mismo de agente de usuario. Manzana, incluso hace un punto para llamar a este en TN2262 :

Safari en el iPad es capaz de entregar un "escritorio" experiencia web, y los usuarios esperan que esta experiencia desde el iPad tiene una pantalla grande y la conectividad de red rápida. Si usted tiene una versión de su sitio web que está optimizado para dispositivos móviles con pantallas pequeñas, no sirven esta versión móvil a los usuarios de iPad.

...

Tenga en cuenta que la cadena de agente de usuario de Safari en el iPad contiene la palabra "Móvil", pero no contiene la palabra "iPhone". Si actualmente servir contenido móvil a cualquier navegador que identifica a sí mismo como "Móvil", que debe modificar sus controles de usuario cadena de agente de buscar IPAD y evitar el envío de que la versión incorrecta de su sitio.

Sobre la base de lo que veo en el FF móvil, el uso de "Android" en esta cadena causará problemas si desea que el tema de escritorio servido para todas las tabletas (y no sólo los iPads) desde el se ha decidido incluirlo en la cadena de UA por varias razones.

he honestamente no probado personalmente la cobertura de los ejemplos anteriores. Yo sé esto: Es un lío complicado! :)

Nota: Si va a configurar esto en EE 1.12 o anterior (no ha comprobado 1.13) se necesita un parche de Magento Apoyo a la FPC para que funcione correctamente. No toma en cuenta las excepciones de diseño en la versión de lanzamiento.

Actualización 1:

El error observado que requiere un parche para las excepciones de diseño en el trabajo todavía existe en EE 1.13.0.0 y 1.13.1.0. Hay un parche disponible desde el apoyo Magento y está en su lista de problemas conocidos: SUPEE-1598

Otros consejos

He añadido 2 excepciones diseño, una para tabletas, por lo cual servir a mi tema de escritorio y otra para móviles, para los que me sirven mi tema móvil. Agrego la excepción de orientación las tabletas en primer lugar, y luego la excepción dirigida a los teléfonos móviles

Tabletas

iPad|Silk|Kindle|Xoom|SCH-I800|Tablet|GT-P10|SC-01C|SHW-M180S|SGH-T849|SCH-I800|SHW-M180L|SPH-P100|SGH-I987|zt180|HTC(.Flyer|\\_Flyer)|Sprint.ATP51|ViewPad7|pandigital(sprnova|nova)|Ideos.S7|Dell.Streak.7|Advent.Vega|A101IT|A70BHT|MID7015|Next2|nook|Windows NT|DROID RAZR

Móviles

android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|iP(hone|od)|iris|kindle|lge |maemo|meego.+mobile|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|(Android.+Mobile)|NOKIA|SymbianOS|N900|BlackBerry|Mobile

Esto funciona más o menos 100% como se esperaba Tengo que dar crédito, y un enorme gracias a beeplogic ¿Quién es que la expresión regular se utiliza como mi fundación, Gracias pitido!

A continuación se muestra una lista de valores posibles. Estoy casi seguro de que estos no son todos los valores posibles, pero cubre la mayoría de los casos:

iPhone|iPod|BlackBerry|Palm|Googlebot-Mobile|Mobile|mobile|mobi|Windows Mobile|Safari Mobile|Android|Opera Mini|Fennec

Fuentes:
http://magebase.com/magento-tutorials/magento-design -exceptions explicada /
http://inchoo.net/ecommerce/magento/magento-mobile -theme-imobile /

Este es uno que he utilizado:

android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|meego.+mobile|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino

Yo tenía una necesidad específica para filtrar las versiones específicas de los dispositivos Android. enfoque similar se puede utilizar para filtrar las versiones de iOS.

El siguiente ejemplo coincide con el iPad, iPhone y Android todo excepto las versiones "2. *", "* 3.", "* 4.0"

iPad|iPhone|Android ((?!(2\.|3\.|4\.0)).)

Está utilizando lookarounds negativas, véase la explicación aquí .
Tenga en cuenta que tratar de imitar "> 2.3" no funcionará en expresiones regulares, pero necesitan una solución como el ejemplo.
Un gran recurso a prueba de expresión regular coincidente en cadenas en línea es Rubular

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top