El otro día recomendaba el plugin WPTouch iPhone Theme como uno de los mejores que existen para mostrar una versión móvil de nuestro sitio a los dispositivos mas empleados: iPod Touch, iPhone, Android. Ahora bien, este plugin tiene una incompatibilidad con otro: WP Supercache. Y cuando Miguel me preguntó por este problema caí en que no había comentado nunca la solución.
Y es que WP Supercache puentea algunas características de WordPress en cuanto a la gestión de cache, y es por eso que necesita configuración adicional.
Si usas WP Cache o la cache interna de WordPress no hay problema, solo tienes que añadir «iPhone» como ‘user agent’ que puede «ver» el sitio en directo, pero WP Supercache sirve HTML estático y no lo verá la mayoría de las veces. Si usas WP Supercache en el modo «half-on», que es como usar WP Cache, puedes añadirle el nuevo ‘user agent
‘ en las opciones del plugin y funcionará, pero si usas el ‘full-mode
‘ no.
La solución pasa por modificar las reglas que WP Supercache añade al fichero ‘.htaccess
‘, incorporando la excepción que queremos. Por ejemplo, para que los lectores que visiten con un iPhone nuestro blog vean la versión en directo y no la «cacheada» tendríamos que añadir esta línea:
RewriteCond %{HTTP_USER_AGENT} !^.+iPhone
Con lo que la sección de Supercache en ‘.htaccess’ quedaría así:
# BEGIN WPSuperCache RewriteEngine On RewriteBase / AddDefaultCharset UTF-8 RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !=POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress|wp-postpass_).*$ RewriteCond %{HTTP_USER_AGENT} !^.+iPhone RewriteCond %{HTTP:Accept-Encoding} gzip RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L] RewriteCond %{REQUEST_URI} !^.*[^/]$ RewriteCond %{REQUEST_URI} !^.*//.*$ RewriteCond %{REQUEST_METHOD} !=POST RewriteCond %{QUERY_STRING} !.*=.* RewriteCond %{HTTP:Cookie} !^.*(comment_author_|wordpress|wp-postpass_).*$ RewriteCond %{HTTP_USER_AGENT} !^.+iPhone RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L] # END WPSuperCache
También puedes añadir las excepciones para iPod o Android si lo deseas o lo crees conveniente:
RewriteCond %{HTTP_USER_AGENT} !^.+iPod
RewriteCond %{HTTP_USER_AGENT} !^.+Android
¡Que usted lo cachee e iPhonee bien!
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Gracias!. A mi me sirvió de mucha ayuda.
Un saludo,
Me alegro, porque tampoco me confirmaste si se te solucionó 😉
yo lo habia desactivado por esa razon, pero ahora que das el dato, pues lo volvere a activar para su utilizacion y ver si funciona todo correctamente
que tal quería saber como sería la regla para el htaccess para los celulares, tipo:
RewriteCond %{HTTP_USER_AGENT} !^.+nokia
Estaba usando el plugin de wptouch y la verdad que es una gozada. Sin embargo, creo que da problemas al intentar guardar el icono en el iphone o es incompatible con algún otro plugin :s Lo de la incompatibilidad lo digo porque probé a guardarlo ayer y me iba perfecto, sin embargo, esta mañana he recibido notificaciones de 404 de la imagen (y está en el servidor, y con permisos 644) ¿Alguna posible solución? Se que puede resultar una tontería el problema, pero siento curiosidad. La página en cuestión es (no te lo pongo con código html por aquello de que pienses que sea spam)
Gracias de antebrazo
Vaya, por lo visto la url la pone sola :p
Recien empeze a crear un blog en WordPress, y gracias a este blog he podido hacer maravillas.
Solo que una duda me ha quedado,referente al post:
¿Que plugin es mejor, WP-PDA o WPTouch ?, ya que anteriormente recomiendas el primero, y ahora este.
Si podrias recomendarme cual, podria utilizar, aunque no es muy necesario.
Al final estoy utilizando WPtouch, me parece mucho más logrado en todos los sentidos. Pero vaya, pruébalos y decide tu mismo 😉
Muchas gracias por contestar rapidamente Fernando, los probare, pero no se de que manera sabre si se visualizan bien, ya que no tengo alguno de los dispositivos mencionados.
Gracias de nuevo, esta es la razon por la cual visito AyudaWordPress.
¿Con desactivar la carga de plugins en el WPTouch no es suficiente?
¿Como hiciste esta conexion con twitter? está muy chula!
Tengo un problema tengo un blog con subdominio.midominio.com pero cuando entro al movil no me carga la web y me manda a http://www.subdominio.midominio.com alguien tiene alguna idea, gracias.
hola lo probe y lo configure y anda muy bien. Una consulta el blog tengo contador de counters99, la pregunta es si hay alguna forma de agregarlo al plugins para que las visitas se registren. Excelente blog, espero que me puedas ayudar saludos
Pues no lo he probado pero el plugin se sirve de un theme, si editas el tema que viene con el plugin podrás agregar lo que quieras
Hola buenas, no sé si será el lugar, pero tengo muchas dudas acerca del wptouch, o de wpmobile detector + supercaché, y la más grande es : Es posible utilizar uno u otro en cualquier tema o por el contrario es necesario utilizar unos temas concretos? muchas gracias.
Buenas alguien podria ayudarme a elimnar complementamente el wptouch, lo desactive lugo lo elimine y este sigue funcionando, muchas gracias
No debería, vacía la cache de tu navegador
Hola, yo entro desde un Samsung Galaxy I y veo la web de Ayuda Wordpress en su versión desktop no la versión móvil, la has desactivado? o ómo puedo hacer para ver la versión móvil?