Suele ser habitual querer introducir un botón «Me gusta» de Facebook en nuestro sitio web de forma que por un lado mostramos el número de seguidores que tiene nuestra página de Facebook y por otro lado invitamos a su vez al usuario a hacer clic en él para empezar a seguir nuestra página. Sin embargo, este tipo de botones suelen cargar bastante un sitio web ya que consisten en un código Javascript que genera dinámicamente dicho botón con el número actualizado de seguidores y con la funcionalidad necesaria para hacer «Me gusta». Esto se traduce en que cada vez que carga una página de nuestro sitio web se tienen que realizar 11 peticiones extras a los servidores de Facebook para descargarse todos los elementos necesarios. Dado que además a día de hoy dichos servidores se encuentran en la costa oeste de Estados Unidos y no están disponibles a través de ningún servicio de CDN o similar, dependiendo de donde se encuentre el usuario es probable que cada una de esas peticiones tenga que atravesar la mitad del globo para completar la descarga. Todo esto provoca que nuestro sitio web se ralentice innecesariamente y su velocidad de carga se vea afectada, lo cual es bastante negativo en varios aspectos.
¿Qué tal si pudiéramos sustituir el botón que proporciona Facebook por una única y sencilla imagen del mismo botón que muestre en todo momento el número actualizado de seguidores de nuestra página de Facebook? Sería fantástico de cara a la optimización del rendimiento web o WPO, pues tan sólo sería necesaria una única petición adicional al servidor, y además ésta se podría servir rápidamente desde una CDN muy próxima a la localización geográfica del usuario, cacheándose además durante un tiempo. De este modo podríamos conseguir que la velocidad de carga de nuestra web continuara siendo muy alta y sin penalizaciones en el rendimiento.
¿Cómo puede conseguirse esto? Parece una solución win-win demasiado buena para ser cierta… Pues puede conseguirse de una forma mucho más sencilla de lo que crees gracias a la librería Imagemagick y un simple script en Bash. Sigue leyendo…