Si estás buscando mejorar la velocidad de carga de tu tienda en línea creada con Prestashop, entonces estás en el lugar adecuado. Te vamos a dar todas las claves y además de una forma sencilla para que puedas realizarlo fácilmente. En este artículo vamos a hablar de la optimización del tiempo de carga en Prestashop, un factor vital para mejorar la experiencia de usuario y el posicionamiento de tu sitio web.
Si has notado que tu tienda en línea tarda demasiado en cargar, seguramente necesita una buena optimización. Prestashop puede funcionar lento por muchas razones; Banners e imágenes pesadas, módulos innecesarios activados, una base de datos mal optimizada, incluso un hosting inadecuado o mala configuración de este.
Pero no te preocupes. Vas a ver como es muy sencillo seguir unas cuantos consejos para optimizar el tiempo de carga de Prestashop y mantener una buena velocidad de forma regular.
¿Por qué mejorar el tiempo de carga?
Mejorar el tiempo de carga de tu tienda en línea es crucial para mejorar la experiencia de usuario, ya que un sitio web lento puede generar frustración y disminuir la probabilidad de que un usuario realice una compra. De hecho, está comprobado que si una página tarda más de 3 segundos en cargar, nos empezamos a poner nerviosos. Y si estos tiempos aumentan lo más probable es que no volvamos a entrar en esa página. Es muy importante para la experiencia de usuario.
Además, la velocidad de carga también es un factor importante en el SEO y el posicionamiento Web, ya que los motores de búsqueda dan prioridad a los sitios web que se cargan más rápidamente. Tan importante es, que es una de las métricas principales de Google para medir sitios Web, lo que llaman «Web Core Vitals». Fíjate como ellos mismo lo remarcan como vital.
¿Cómo medir la velocidad de un sitio Web?
Es importante saber cómo medir el tiempo de carga de Prestashop. Para ello, existen herramientas gratuitas como GTmetrix o PageSpeed Insights, que nos permiten conocer el tiempo de carga y las mejoras que se pueden implementar. Estas herramientas también te proporcionan una puntuación general para la velocidad de tu sitio web, lo que te permite tener una idea clara del rendimiento de tu tienda en línea y ver fácilmente si estamos mejorando.
Estos servicios gratuitos ofrecen varias opciones de localización de servidores y de distintos dispositvos para medir la velocidad de los sitios Web. Su funcionamiento es realmente sencillo. Tan solo tienes que introducir la URL, el servidor y dispositivo y la aplicación realizará el análisis, ofreciendote mucha información valiosa sobre la velocidad de carga.
Mejorar la puntuación de Web Core Vitals
Web Core Vitals de Google es un conjunto de métricas que miden la respuesta de una página web. Y cuanto mejor sea el resultado, mejor valorará Google tu página web. Estas métricas son consideradas como factores vitales para el SEO y ayudan a los desarrolladores y propietarios de sitios web a mejorar la experiencia de usuario en sus páginas web.
Las tres métricas principales que conforman Web Core Vitals son: tiempo de carga, interactividad y estabilidad visual. El objetivo de Web Core Vitals es proporcionar una guía para medir y mejorar la experiencia de usuario de un sitio web en diferentes dispositivos y conexiones de internet.
Para que una página web sea considerada como óptima en términos de Web Core Vitals de Google, las páginas web debe cumplir los siguientes valores:
- El tiempo de carga debería ser inferior a 2.5 segundos para que la página se cargue completamente y sea usable para el usuario.
- Una vez cargada la página, la interactividad debería tener un tiempo de respuesta inferior a 100 milisegundos, para que los usuarios puedan interactuar con la página de manera fluida y sin interrupciones.
- La estabilidad visual debería tener un bajo porcentaje de elementos inestables, como botones o imágenes que se mueven o cambian de posición, para que los usuarios no se sientan confundidos o frustrados durante la navegación.
Lo sé, puede parecer difícil e incluso confuso, es lo que tiene el lenguaje técnico. Pero no te preocupes, que lo explicaremos todo y verás como al final resulta bastante sencillo cumplir sus recomendaciones.
Problemas que causan una carga lenta en Prestashop
Existen muchas posibles situaciones que pueden desencadenar en una carga lenta en Prestashop. Por ello, es importante comprobar estos puntos para poder solucionar el problema y optimizar la carga de tu tienda en línea. A continuación, te cuento algunas de las razones más comunes por las que tu sitio web en Prestashop puede estar cargando lento:
-
Uso excesivo de módulos innecesarios: Prestashop cuenta con una amplia variedad de módulos que puedes instalar en tu sitio web, pero muchos de ellos no son necesarios y pueden ralentizar la carga de tu página. Es importante evaluar regularmente los módulos que tienes instalados y desactivar aquellos que no estás utilizando para mejorar el rendimiento de tu sitio web.
-
Imágenes pesadas: Las imágenes de alta resolución y gran tamaño son una de las principales razones por las que una página web puede cargar lentamente. Es importante optimizar las imágenes para que sean lo más ligeras posible sin comprometer su calidad. Prestashop cuenta con herramientas de compresión de imágenes integradas, como TinyPNG, que pueden ayudarte a reducir el tamaño de las imágenes y mejorar el tiempo de carga de tu página.
-
Sistema de caché: La caché es una forma de almacenar temporalmente los datos recurrentes de una página web para que se carguen más rápido en visitas posteriores. Si tu sitio web en Prestashop no tiene una caché adecuada, puede estar ralentizando la carga de las páginas. Es importante activar la caché en tu sitio web y configurarla adecuadamente para que funcione de manera eficiente.
-
Servidor de alojamiento inadecuado: Si el servidor de alojamiento que utilizas para tu sitio web en Prestashop no es lo suficientemente potente o no está configurado adecuadamente, puede afectar el tiempo de carga de tu página. El servidor siempre debe estar acorde a la tienda online y si está optimizado para Prestashop, mejor que mejor.
-
Código innecesario: Si tu sitio web en Prestashop tiene código innecesario, como etiquetas HTML redundantes, archivos css o scripts no utilizados, puede estar ralentizando la carga de tu página. Es importante revisar el código de tu sitio web regularmente y eliminar cualquier código innecesario para mejorar el tiempo de carga.
- Utilización de demasiados módulos: Los módulos de prestashop son unos plugins geniales, pues nos permiten personalizar la tienda a nuestro gusto. Pero tenemos que tener en cuenta, que cada módulo necesita cargar sus archivos php, css, tpl. Y además, ejecutarlos y realizar las operaciones que necesite. Lo que siempre supone una carga extra al sistema.
-
Falta de actualizaciones: Si tu sitio web en Prestashop no está actualizado a la última versión, es posible que esté cargando lentamente debido a problemas de compatibilidad o vulnerabilidades de seguridad. Es importante actualizar regularmente tu sitio web a la última versión disponible para asegurarte de que esté funcionando de manera óptima.
-
Uso de fuentes o tipografías pesadas: Las fuentes o tipografías pesadas pueden ralentizar la carga de tu sitio web en Prestashop. Es importante elegir fuentes ligeras y optimizadas para la web para asegurarte de que se carguen rápidamente. Además, no conviene abusar y cargar demasiados tipos de letras distintos.
-
Exceso de redirecciones: Si tu sitio web en Prestashop tiene demasiados redireccionamientos, puede afectar la velocidad de carga de tus páginas. Es importante evaluar regularmente los redireccionamientos que tienes en tu sitio web y eliminar los que no son necesarios.
- Scripts de terceros: Si tu sitio web en Prestashop utiliza scripts de terceros, como widgets de redes sociales o seguimiento de analítica, pueden ralentizar la carga de tu sitio web. Es importante evaluar la carga de estos scripts de terceros que utilizas y eliminar aquellos que no son necesarios.
-
Uso de demasiados módulos: Si utilizas demasiados módulos en tu sitio web Prestashop, afectará la velocidad de carga de tus páginas. Es importante evaluar regularmente los plugins que tienes instalados y desactivar aquellos que no estás utilizando o no sean importantes para mejorar el rendimiento de tu sitio web.
- Un tema o módulo mal desarrollado: Alguna vez me ha pasado que al instalar un módulo o un tema para prestashop, el rendimiento ha caído empicado. Un módulo mal desarrollado funcionará, pero a base de bajar el rendimiento de tu tienda Prestashop.
Como verás, una carga lenta en Prestashop puede deberse a una gran variedad de cosas, desde el uso excesivo de módulos innecesarios hasta un tema o módulo mal desarrollado. Es importante ir paso a paso y comprobar que tu Prestashop cumple con todas las recomendacione de carga y velocidad.
Consejos para optimizar el tiempo de carga de Prestashop
Ya hemos visto las causas más comunes que pueden hacer que aumente el tiempo de carga de Prestashop. Ahora vamos a ver como evitar esos problemas o como resolverlos adecuadamente. Empecemos por el comienzo, el servidor
El hosting o alojamiento Web
Elegir un hosting adecuado y optimizado para Prestashop es fundamental para garantizar un buen rendimiento de la tienda online. Hoy en día tenemos un monton de empresas de hosting donde elegir. Para seleccionar la idónea para nosotros, en este caso, buscaremos hostings especializados en Prestashop. De esta manera partiremos de una configuración optimizada para el e-commerce que vamos a trabajar, Prestashop.
Sobre los recursos del servidor variarán dependiendo del tráfico web que tenga la página y la cantidad de productos de la tienda online. Por ejemplo, catálogos de productos muy extensos necesitan de más potencia de hardware para mover la base de datos. Al igual que cuantas más visitas, más máquina necesitaremos.
Lo bueno de estos servidores es que son escalables. Eso quiere decir que puedes aumentar y reducir los recursos conforme necesites.
Muchos me preguntan si hosting compartido o dedicado. Mejor es el dedicado, pero cuesta más y requiere más formación para configurarlo y mantenerlo. Aunque esto no suele ser un problema, ya que si se requiere de ese nivel es que la tienda funciona bien y puede costearselo.
Manten Prestashop actualizado
Otro consejo importante para optimizar el tiempo de carga de Prestashop es mantener la versión de la tienda online actualizada a la más reciente ESTABLE disponible. Las actualizaciones de Prestashop incluyen mejoras de rendimiento, correcciones de errores y nuevas características, por lo que es importante mantenerse al día para garantizar un buen rendimiento de la tienda. Al igual que conviene mantener los módulos también actualizados.
Ahora, tampoco hay que salir locos y actualizar cada pequeño parche que implementen. Una buena técnica es revisar el Changelog de las nuevas versiones para que se ha añadido / corregido y ya decidimos si actualizamos a esa versión.
Optimización de carga de imágenes
Otra parte importante para optimizar el tiempo de carga de Prestashop es la optimización de imágenes mediante la compresión y reducción de su tamaño. Las imágenes son elementos importantes en una tienda en línea, ya que permiten mostrar los productos de manera atractiva y detallada. Sin embargo, si no se optimizan adecuadamente, pueden ralentizar la carga de la página y afectar negativamente al SEO y la experiencia del usuario.
Existen varias técnicas para optimizar imágenes en Prestashop, como la compresión y la reducción de su tamaño. La compresión consiste en reducir el peso de una imagen sin perder calidad, mientras que la reducción de tamaño implica disminuir la resolución de una imagen para que ocupe menos espacio.
Prestashop ofrece una herramienta general con la que puedes elegir el nivel de compresión para archivos JPG y PNG. Se encuentra en Diseño -> Ajustes de Imágenes. Esta herramienta se encarga de comprimir cualquier imagen que subas desde el backoffice de Prestashop. Lo bueno es que te automatiza el proceso de compresión de imagenes.. Lo malo es que la regla es general para todas las imágenes. Quiero decir, que siempre comprime al valor que le indiquemos, pero puede que necesite más o incluso menos.
También disponemos de diversas herramientas online y plugins para optimizar imágenes en Prestashop, como TinyPNG o Imagify. Estos plugins pueden reducir el tamaño de las imágenes sin afectar la calidad visual y mejorar significativamente el tiempo de carga de la página.
Es importante tener en cuenta que, aunque la optimización de imágenes puede mejorar el tiempo de carga de la página, no se debe sacrificar la calidad de las imágenes para lograr una carga más rápida. Es importante encontrar un equilibrio entre la calidad visual de la imágen y el tiempo de carga de esta para ofrecer una experiencia óptima al usuario.
Y por supuesto, lo mismo con los vídeos si los usais en la Web.
Usar sistemas de cache
Otro punto importante para optimizar el tiempo de carga de Prestashop es el uso de técnicas de caché para mejorar el rendimiento de la tienda online. La caché es una técnica que permite almacenar temporalmente ciertos datos o recursos para que puedan ser accedidos más rápidamente en el futuro sin tener que volver a consultarlos.
Tenemos varias opciones de cache en Prestashop, y depende del hosting, puede que tenga alguna otra solución de cache más efectiva. Mi recomendación siempre es que no me preguntes a mi, hay que hablar con el hosting sobre este tema. ¿Por qué? Pues muy sencillo. Son sus máquinas y nadie las conoce mejor que ellos.
Las opciones que ofrece prestashop son:
Memcached es un sistema de caché de alto rendimiento que almacena datos en la memoria RAM. Con Memcached, se puede reducir el tiempo de carga de la tienda al evitar consultas repetitivas a la base de datos y almacenando datos comunes en la memoria RAM para acceder a ellos rápidamente. Se debe configurar también en el hosting.
OpCache es un sistema de caché de código abierto que almacena en caché el código PHP compilado, lo que puede mejorar significativamente el rendimiento de la tienda en línea. Se debe configurar también en el hosting.
CacheFS es un sistema de caché basado en archivos que almacena en caché los datos de la base de datos y las plantillas para reducir el tiempo de carga de la tienda. Este es el único sistema de cache que no necesita configuración por parte del hosting.
Es importante tener en cuenta que estas técnicas de caché son herramientas poderosas que pueden mejorar significativamente el rendimiento de la tienda en línea, pero es importante configurarlas adecuadamente y monitorear su uso para evitar problemas de rendimiento o de seguridad.
Desactiva y elimina los módulos innecesarios
Eliminar módulos innecesarios o que ralentizan la carga es otro acción importante en la optimización del tiempo de carga de una tienda Prestashop. Cuenta que cada módulo añade archivos a la carga, más las operaciones que tenga que realizar para obtener los datos. Por eso es importante revisar nuestros módulos y ver si son realmente necesarios.
Un ejemplo sencillo. Hace tiempo compre un módulo de etiquetas para poder poner las variantes que tenia el producto, como las etiquetas de «Nuevo» u «Oferta». Pues aunque no estaba mal construido, ralentizaba mucho la carga de las páginas. Por lo que decidimos eliminarlo y poner esas etiquetas en la imagen de portada del producto.
Para determinar qué módulos pueden estar ralentizando la carga de la tienda, se puede utilizar una herramienta de perfilamiento de PHP, como Xdebug o Blackfire. Estas herramientas permiten analizar el rendimiento de la tienda y detectar los módulos que están tomando más tiempo de carga.
Es importante evaluar regularmente el uso de los módulos y eliminar aquellos que no son esenciales para el funcionamiento de la tienda. Algunos módulos pueden ser útiles para ciertos momentos, como promociones específicas, pero pueden no ser necesarios todo el tiempo.
Es importante tener en cuenta que la eliminación de módulos debe hacerse con precaución y es recomendable hacer una copia de seguridad de la tienda antes de desinstalar cualquier módulo para evitar problemas de estabilidad o pérdida de datos.
Desactiva las estadisticas de Prestashop
Hoy en día Google Analitycs y otras plataformas de estudio de datos te dan mucha información sobre tu página Web, clientes, consultas, mejores productos, categorias, páginas de destino, etc.
Pues si todas esas tareas las realiza Google en su servidor, mejor que mejor. Así no sobrecargamos nuestra máquina con todo ese tratamiento de información. Ni saturamos la base de datos con todos esos datos.
Utiliza media servers
La opción de los media servers de Prestashop es muy interesante. Al cargar una página web, esta necesita llamar X número de archivos. Los archivos se descargan del servidor de 2 en 2 desde cada dominio. Con los media server lo que hacemos es cargar los archivos desde 4 subdominos distintos con el fin de cargar más rápido el conjunto de archivos.
Su utilización es sencilla. Crea 3 subdominios que apunten al dominio principal y añadelos en el backoffice de Prestashop. La carga de archivos se repartirá entre los 3 servidores aumentando la velocidad de carga de la Web.
Prestashop también ofrece la opción de utilizar servidores de media especializados, como «CloudFlare» , «Cloudinary» o «Imgix», para entregar los archivos multimedia de manera más rápida y eficiente. Estos servicios utilizan técnicas avanzadas de entrega de contenido, como la entrega a través de servidores CDN cercanosy la optimización de la compresión, para mejorar el rendimiento de la tienda.
Utiliza la CCC de Prestashop
La CCC (Combinación, Compresión y Caché) de Prestashop es una técnica de optimización que permite mejorar el rendimiento y la velocidad de carga de una tienda online. Esta técnica consiste en combinar, comprimir y cachear los archivos CSS, JavaScript y HTML de la página web de manera automática.
La combinación implica juntar varios archivos CSS o JavaScript en uno solo, lo que reduce la cantidad de solicitudes que el servidor tiene que procesar. La compresión, por otro lado, implica reducir el tamaño de los archivos CSS, JavaScript y HTML mediante la eliminación de espacios en blanco, comentarios y caracteres innecesarios. Por último, el caché implica almacenar en el navegador los archivos de la página web para evitar que se tengan que descargar en cada visita.
En Prestashop, la CCC se puede configurar desde el backoffice de la tienda. La opción se encuentra en la sección «Parámetros de rendimiento» y es posible activar o desactivar la combinación, compresión y caché de archivos por separado. Al activar la CCC, Prestashop generará automáticamente un archivo combinado y comprimido para cada tipo de archivo, y lo almacenará en la carpeta «cache» de la tienda. De esta manera, se mejorará el tiempo de carga de la página web y se reducirá la carga en el servidor.
Optimizar la base de datos de Prestashop
Conforme van creciendo las tiendas, los registros en la base de datos también van creciendo. Estos registros no «caducan», por los que se quedan permanentes en la bbdd sino los eliminamos, aumentando exponencialmente su tamaño. Cuanto más grande es una base de datos, más largas en tiempo se vuelven sus consultas, puedes tiene que buscar entre más registros.
Por ese motivo se realizan las optimizaciones de la bbdd de prestashop, para liberarla de espacio, hacerla más liviana y comprobar la integridad de las tablas.
Hay tablas, que por su contenido y al no estar enlazadas con otras tablas, son prescindibles los registros antiguos. Como por ejemplo:
- ps_log: Esta tabla almacena los registros de actividad de los usuarios y los datos de seguimiento, lo que puede ocupar mucho espacio en la base de datos.
- ps_connections: Esta tabla almacena los registros de las conexiones de los usuarios a la tienda.
- ps_guest: Esta tabla almacena los registros de los usuarios que compran como invitados.
También es habitual hacer limpieza de pedidos, clientes y productos antiguos. Antes se guarda una copia de la base de datos con toda la información por si necesitamos consultarla posteriormente y procedemos a su limpieza, dejando por ejemplo los últimos 3 años de registros.
Este es sin duda uno de los pasos más técnicos y con los que más cuidado debemos de tener. Siempre que trabajemos con la base de datos conviene hacer una copia de seguridad por si cualquier cosa saliera mal.
También hay módulos para prestashop que ofrecen esta funcionalidad. Como por ejemplo este módulo gratuito de MyPresta, Prestashop Database Optimization
Revisa el tiempo de carga periódicamente
Monitorizar regularmente tu sitio web es importante para detectar posibles problemas de rendimiento. Pues aún habiendo hecho las optimizaciones oportunas, puede surgir algún nuevo problema. Para ello puedes utilizar herramientas de análisis como los que hemos visto más arriba para supervisar el rendimiento de tu sitio web y realizar ajustes según sea necesario.