Al día de hoy tener un sitio rápido no es opcional, debes preocuparte y ocuparte de la velocidad de tu web, si quieres mejorar en estos aspectos…
La velocidad web es importante por varios motivos, es un factor de posicionamiento SEO y Google penaliza los sitios lentos. Un sitio rápido vende más y un ejemplo es Amazon, que calculó que por cada segundo de carga de más, perdería 1.6 billones de Dólares en ventas en un año.
Igualmente la lentitud o falta de optimización del sitio es causante de mala experiencia de usuario (y consecuente abandono del site) debido a las caídas de la web o retraso de carga, y además es culpable de la generación de errores 500 en WordPress.
Tener tu web rápida te ahorrará dinero en hosting, al consumir menos recursos y poder contratar planes de menos exigencia y por ende más económicos.
En este post vamos a enseñarte lo más resaltante que tienes que saber para optimizar la velocidad de tu WordPress y hacer que sea mucho más rápido.
Estos son los motivos por los que WordPress se vuelve lento:
Un WordPress lento también hace que sea casi imposible trabajar con el panel de administración, consumirá muchos más recursos del servidor (obligándote a contratar planes con más prestaciones y por lo tanto más costosos), sin importar para nada si tienes pocas o muchas visitas.
La primera tarea de toda optimización es hacer un test de velocidad a tu web WordPress, para ello te recomendamos https://gtmetrix.com/ uno de los tantos testers más confiables.
Luego de obtener los resultados de medición de tu sitio, en términos generales recomendamos que tu web cumpla los siguientes requisitos:
Si quieres hacer tu web ultrarrápida, lo primero que necesitas es un buen hosting WordPress, que tenga lo siguiente:
Debes activar la compresión GZIP en WordPress, porque comprime los archivos de un sitio web, haciendo que pesen menos y tarden menos en cargar.
Debería estar disponible y activo en todos los proveedores de hosting, pero lamentablemente no suele ser así. Puedes detectar si tu hosting lo tiene activado con la herramienta checkgzipcompression.
Si usas Cpanel puedes activar la compresión Gzip en el apartado Software/Servicios en uno que se llama Optimizar sitio web y actívala eligiendo la opción Compress all content.
Si no tienes conocimientos puedes contactar con tu hosting y que ellos te lo activen (si está disponible en su versión de cPanel), o si eres usuario avanzado puede que prefieras hacerlo tú mismo a través del archivo htaccess con el siguiente código.
#Activar compresión Gzip SetOutputFilter DEFLATE
Debes actualizar WordPress a PHP 7, para que tenga mejor rendimiento y consuma menos recursos , pero siempre y cuando todos los plugins y temas que estás usando sean compatibles con esta versión, confirmarlo es muy sencillo, simplemente (si ya no está activa) ve configurando una a una las versiones 7 de PHP (7.1, luego 7.2, luego 7.3 y así sucesivamente), y a medida que las activas limpia caché de navegador, y navega por tu sitio, comprobando que todo funciona perfectamente.
Para modificar la versión de PHP simplemente ingresas al Cpanel, te vas a software – Seleccionar Versión PHP – Versión actual de PHP, y allí seleccionas (y se activará automáticamente) la que gustes.
Si tu web te da error seguramente tengas alguna incompatibilidad en temas o plugins con la versión PHP nueva que seleccionaste, activa la que anteriormente tenía, y trata de actualizar el theme y/o plugins, hasta que el ajustes PHP no cause conflicto con su funcionamiento.
WordPress debería de trabajar con un mínimo de 256MB de memoria y tu hosting la debería de tener o tendrás problemas de lentitud, mal funcionamiento, errores 500 y caídas.
Para aumentarla debes de editar el archivo wp-config.php que estará en la carpeta public_html e insertar dentro lo siguiente:
define('WP_MEMORY_LIMIT', '256M');
También puedes hacerlo desde el cPanel, ingresando a Software – Seleccionar Versión PHP – Options – memory_limit allí selecciona la opción que consideres, mayor a 256MB.
Siempre, siempre debes actualizar WordPress, temas y plugins, porque las últimas versiones son las más rápidas y seguras.
Muchos de los fallos de velocidad suelen venir porque algún plugin o un tema tiene algún fallo. A lo mejor intenta conectarse a una url que ya no existe, carga una API que ya no está u otra cosa.
Obviamente no vas a instalar el mismo plugins 2 veces, pero seguramente tengas plugins que hagan las mismas funciones y no estés usando. Te ponemos algunos ejemplos:
El resto que no estés usando directamente elimínalos.
Un tema WordPress rápido es la mejor inversión que harás para tu web, porque cargará pocos scripts y además consumirá pocos recursos.
Analiza tu web (revisando el header del código fuente, sobre todo del home principal) y busca scripts que tengan el nombre de la plantilla en la URL y si tiene más de 10, ya sabes que es muy pesada.
El número de plugins no importa (“tanto”), lo que sí importa (¡mucho!) es si estos son plugins lentos, con un alto consumo de recursos, porque será este el que ralentice tu WordPress.
Si tienes la web en funcionamiento y ya recibe cierto tráfico, no podrás desactivarlos durante mucho tiempo (pues restarás funcionalidades a tu sitio), por lo que te recomendamos uses el plugin P3 Plugin Performance Profiler.
Es un plugins para WordPress que analizará hasta el último plugin de tu web y te dirá cuál de ellos es el culpable del consumo de recursos.
Recuerda que este plugin no es compatible con PHP 7. Así que deberás de cambiar la versión de este a la 5.6 para usarlo y después vuelve a la que tenías.
Para tener un sitio rápido, hay que activar la caché en WordPress, porque esta creará copias de tu web en HTML, que se servirán mucho más rápido.
De lo contrario, en cada visita se ejecutará el PHP, hará peticiones a la base de datos, lo que es mucho más lento y consume muchos recursos, sobre todo si tienes mucho tráfico.
En WordPress lo hacemos mediante plugins de caché y el más usado por ser gratuito es WP Super Cache, aunque nosotros recomendamos WP Rocket que consideramos mejor.
Para activar la caché en WordPress:
El archivo Cron de WordPress es el encargado de realizar muchas tareas.
Desde buscar actualizaciones del sistema y de plugins, hace que tus artículos programados se publiquen, que tus copias de seguridad se hagan automáticamente y mucho más.
Pues éste pequeño archivo es un traga recursos, pero vamos a ver. ¿Para qué quiero que se mire a cada momento si hay o no actualizaciones y demás historias?. Vamos a desactivarlo y configurarlo para que se active cada x tiempo ahorrando muchos recursos.
Lo primero es irnos a editar el archivo de configuración de WordPress wp-config.php, ya sea por el panel hosting o por FTP y añadimos lo siguiente para desactivarlo.
define('DISABLE_WP_CRON', true);
Ya lo tenemos desactivado, pero así no nos funciona nada que esté programado. La solución es activarlo cada x tiempo para que realice las acciones necesarias.
Igualmente podemos programarlo -luego de desactivarlo vía wp-config.php como se explica arriba- a través de cPanel, allí entramos en Avanzada – Trabajos de Cron.
Podemos configurarlo para que se active cada 15 minutos, tiempo suficiente para todo. Básicamente tenemos que añadir la regla y elegir los tiempos. No es difícil, pero hay que conocer la ruta a insertar (ubicando dónde está el archivo wp-cron.php”). En nuestro caso -por ejemplo- tenemos lo siguiente:
*/15 * * * * php -q /home2/mediaweb/public_html/wp-cron.php
Si haces esto correctamente, tendremos una web que gasta menos recursos, pero manteniendo el mismo funcionamiento.
A veces el problema no viene del consumo de cpu, sino de consumos altos de memoria RAM.
WordPress al igual que cualquier otro programa se ejecuta en RAM y si hay algún plugin que esté consumiendo más recursos de la cuenta, pues la web cargará más lenta. Así que nos toca ver qué plugin está haciendo un consumo excesivo de memoria RAM.
Tienes que saber que no hay un plugin manejable que te diga la cantidad de RAM que consume otro; hay algunos, pero son complicados de entender y no te dan datos sencillos; sin embargo hemos descubierto un modo de saber más o menos el consumo de RAM de los plugins.
Basta que con tener activado el plugin Server IP & Memory Usage Display y vamos desactivando plugins y viendo como la memoria va bajando para saber lo que éstos consumen.
El HeartBeat o latido de WordPress es una función que hace que WordPress esté despierto ejecutando continuamente algunas funciones. Un ejemplo puede ser la de guardar un artículo cada x segundo para que no ser pierdan los nuevos cambios.
El problema de esto es que hace un consumo muy elevado de recursos y más si se trata de plugins pesados. Por eso te recomendamos que lo controles todo lo que puedas, y es tan sencillo como:
Verás como el consumo de recursos baja.
Las imágenes son otro de los motivos principales que hacen que el tiempo de carga de una web aumente. Debes de optimizar las imágenes de WordPress y te damos consejos de cómo hacerlo.
Las miniaturas de WordPress son básicamente unas copias de estas imágenes en otros tamaños. Puedes tener varios tamaños configurados y cuando subas una imagen en por ejemplo 1200×800, se crea una versión de 600×300, otra de 150×150, etc. Esto obviamente depende de los tamaños que tengas configurados. Pero también depende de la plantilla, porque estas también suelen traer incorporados algunos tamaños predefinidos.
Para la plantilla no hay problema, pero cuando uses un builder o insertes imágenes a mano te recomendamos que lo hagas todo con miniaturas, verás como de este modo tu blog será más rápido.
Las imágenes pesadas son unos de los factores que más hacen subir los tiempos de carga de WordPress. Aunque ya estemos usando tamaños correctos, puede que sigan ralentizando nuestra web.
Esto suele pasar porque además de adaptarles el tamaño, hay que optimizarlas para reducir su peso. Por suerte hay muchas herramientas para ello y además muchas son gratis. Lo que hace este tipo de herramientas o plugins es coger la imagen, reducir su peso, pero sin pérdida de calidad.
Para solucionar esto lo ideal es optimizar todas las imágenes cuando se suben, pero obviamente no podemos estar haciéndolo una a una si subimos muchas.
Lo suyo es automatizarlo y para ello usaremos un plugin de WordPress. Los hay muchos, pero si tienes pocas imágenes puedes usar WP Smush.
El problema de este plugin es que solo optimiza 50 imágenes cada vez que le das al botón. Si tu blog tiene muchas más, puedes o bien pagar la versión Pro o usar Imagify, es pago pero vale la pena.
Esto aplica si manejas un blog y tienes activos los comentarios.
Seamos claros, un blog no es un blog si no hay usuarios que dejan comentarios y estos obviamente tendrán que tener una foto. El problema de ponerte una foto en Gravatar es que si hay un artículo con 100 comentarios, son 100 llamadas más que se hacen, esto recarga mucho el blog tanto por el peso de las mismas, como el tiempo que tardan en cargar.
La solución pasa por cachear las imágenes de Gravatar y lo puedes hacer usando el plugin NIX Gravatar Caché.
Ahora todas esas imágenes de los Gravatar se guardarán en caché, haciendo que tus post sean mucho más rápidos.
Si cada vez que entras a un sitio web, se te tuvieran que descargar de nuevo todos los archivos, por una parte la web iría lenta y por otro te comerías los datos de tu celular (si accedes desde allí sin wifi).
La solución es que cada visitante guarde lo más pesado en la cache de su ordenador o smartphone para que no lo tenga que descargar de nuevo y con eso me refiero a las imágenes, archivos css, Javascripts, etc.
Así que vamos a preparar nuestro WordPress para que les diga a los navegadores que las guarde, pero solo con una caducidad de una semana por si cambian.
Nos vamos a nuestro archivo htaccess para editarlo y agregamos lo siguiente:
ExpiresActive On ExpiresDefault A3600 <filesmatch ".(jpg|JPG|gif|GIF|png|css|ico|js)$"> ExpiresDefault "access plus 1 week"
WordPress suele recargar la base de datos de varias maneras:
Cada uno de estos factores hace que tu sitio web tarde más y más en resolver las llamadas a la base de datos. Esto termina ralentizándolo, así que deberías de optimizar la base de datos de WordPress.
Para solucionar el problema de las revisiones lo ideal es que las desactives y esto se hace añadiendo el siguiente código al wp-config.php:
define('WP_POST_REVISIONS', false);
También puedes limitar el número de revisiones si las necesitas cambiando el número en el siguiente código:
define('WP_POST_REVISIONS', 5);
Respecto a los plugins, lo mejor para ello es entrar en la base de datos de tu WordPress y eliminar las tablas que ya no te sirvan.
Ojo: antes haz una copia de seguridad por si borrar algo que no debieras.
Haces clic en la base de datos, seleccionas las tablas y después le das a borrar.
Y después lo que te queda es optimizar la base de datos y lo puedes hacer con el plugin WP Optimize.
WP Rocket también trae esta opción, así que puedes hacerlo con este mismo.
El problema de usar temas y plugins pesados es que contienen muchos archivos estáticos. Por eso lo primero es usar un tema ligero, pero sino, podemos intentar arreglarlo. Ademas, cada plugin lleva los suyos, así que en cuanto tengas varios plugin, puede que WordPress acabe ralentizado, así que una solución para este problema es optimizar archivos CSS y JS en WordPress.
Por ejemplo minificarlos, que es básicamente coger estos archivos y comprimirlos para que sean lo más ligeros posibles. Además de ello se suele usar la técnica de la concatenación o combinación, que no es más que juntarlos todos en uno o varios para que se hagan menos llamadas.
El problema de esto es que debes saber hacerlo muy bien, si no quieres tener problemas de funcionamiento o visualización y esto ya depende de cada web.
WooCommerce es un gran sistema para vender desde WordPress y hay muchas tareas para hacer que WooCommerce cargue rápido y muchas de ellas incluyen las que ya hemos explicado.
Muchos archivos CSS y scripts de Javascript tiene un control de versiones. Por ejemplo, http://miweb.com/miarchivo.css?version=1.02
Lo malo de ésto es que hacer esa comprobación añade carga a la web y no ayuda precisamente a la seguridad del sitio, porque cualquiera puede ver la versión de ese script que usas y si tiene algún fallo que explotar.
Lo podemos desactivar añadiendo lo siguiente al archivo functions.php del tema que uses, dentro de Apariencia – Editor.
function _remove_script_version( $src ) { $parts = explode( '?', $src ); return $parts[0]; } add_filter( 'script_loader_src', '_remove_script_version', 15, 1 ); add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );
Un CDN o Content Distribution Network es un servicio que lo que hace es servir por ti los archivos estáticos de tu sitio web. Desde los archivos de imagen, las hojas de estilo CSS y los scripts de Javascript JS.
Nosotros solemos recomendar Cloudflare y para configurarlo es tan sencillo como:
Ahora todo el tráfico de tu blog o site pasará por él y verás como carga más rápido y además ahorras recursos de tu hosting.
Esperamos que esta guía te sea de utilidad y consigas optimizar tu WordPress todo lo que puedas.
Debes de tener en cuenta que esto es el trabajo estándar y que cada proyecto suele tener sus peculiaridades y dificultades propias.
Haz tu web ultrarrápida y verás como mejoran todos los resultados a nivel de optimización, visitas y capacidad de estar aptos para Google.