Hace poco tiempo Google anuncio que ha decidido incluir la velocidad de la web el la clasificación de los resultados de búsqueda del buscador. Por este motivo todos los administradores desean mejorar la velocidad en WordPress.
Hay muchos parámetros y campos que mejorar para que WordPress sea lo mas rápido posible, por esto en esta guía hemos intentado realizarla lo mas completa posible con la experiencia que tenemos en este campo.
Antes de mejorar la velocidad en nuestro WordPress tenemos que analizarla y saber cuanto tarda en cargar, cual es el peso de la web, que parámetros debemos mejorar. Para ello existen diferentes herramientas online, entre ellas las mejores y más utilizadas son el pingdom y el gtmetrix. Con estas herramientas podrás detectar el progreso que vayas realizando a medida que vas mejorando la velocidad en WordPress.
1. Plan de Hosting
Esto sin duda es una de las partes más importantes para que tu página web sea rápida, para cotejar bien el plan que necesitamos para nuestro WordPress tenemos que hacernos las siguientes preguntas:
- ¿Que trafico mensual tiene mi WordPress.?
- ¿Cuanto espacio ocupa mi WordPress?
- ¿Que procesos internos realiza mi WordPress (plugins, cron …) ?
Esto repercute al hosting que debes tener para que el WordPress funcione de forma fluida.
Aunque todos nuestro planes ofrecen transferencia ilimitada esto no quiere decir que un hosting inicio soporte miles de visitas diarias, ya que además de transferencia de datos las visitas consumen recursos del servidor (cpu, memoria …), por ello es muy importante saber los recursos que consume nuestro WordPress. Por mucho que optimicemos nuestro WordPress si este sobrecarga el servidor no nos valdrá todos los esfuerzos realizados para que corra lo mas rápido posible.
2. Tener actualizado WordPress
Tener actualizado WordPress es bastante importante ya que los desarrolladores no actualizan WordPress solo por seguridad y mayores utilidades si no que también mejoran el rendimiento del cms para el bien común.
3. Plugins
Localizar los plugins que tengas instalados y pensar si realmente necesitas esos plugin, si la respuesta es que no en alguno desactívalo y elimínalo. Tenemos que tener en cuanta que cada plugin genera procesos y estos pueden tardar más o menos, por esto es mejor tener los plugin necesarios y no sobrecargar el WordPress de plugins inútiles que hagan que aumente el tiempo de nuestra página web.
Al igual que WordPress también debemos actualizar los plugin ya que también van mejorando la optimización de este y puede que se mejore la velocidad.
4. Optimización de la base de datos
Tener optimizada nuestra bases de datos es muy importante, ya que por el simple hecho de que el motor de la base de datos no sea el correcto puedes notar la mejora a simple vista. El motor de base de datos óptimo para la velocidad es MyISAM, así que si tenéis vuestra base de datos en InnoDB debéis hacer el cambio urgentemente.
Además de esto tener una base de datos optimizada es primordial, para ello existen varios plugins que lo hacen sin tener que meternos en PHPMyAdmin, ni saber nada de estos temas. Estos plugin son Optimize DB y WP Optimize.
5. Cacheo de la Base de Datos
Las consultas a la base de datos se realizan en todas las páginas cada vez que alguien la visita, por ello cuanto más consultas podamos cachear mas rápido funcionara nuestra web, ya que no tendrá que consultar la base de datos porque el resultado lo tiene almacenado en cache y esto siempre es mas rápido.
Para ello hay plugin como W3 Total Cache que realizan este tipo de acciones además otras muchas más.
6. Revisiones de Post
A partir de la versión 2.6 de WordPress se introdujeron las revisiones de los post. Esto es un añadido bastante útil pero no es muy amigable para la velocidad.
Lo que realmente hace es que cada revisión es guardada en la base de datos y esto genera que la base de datos de WordPress sea mas grande y pesada y todas las consultas repercuten en ello, por ello si esta utilidad no la necesitais los mejor es desactivarla.
Para desactivar La revisión de Post tenemos que abrir el fichero config.php situado en la raiz de nuestro WordPress y modificar la siguiente linea:
define('WP_POST_REVISIONS', FALSE);
Si queremos eliminar todas las revisiones que ya han sido creadas hay que ejecutar la siguiente consulta en nuestra base de datos:
DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision';
7. Utilizar plugin para cachear
Utilizar algún plugin de cache para WordPress es uno de los apartados que mas pueden notar su mejora, para ello hay dos plugins que son los que mejores resultados tienen (WP Super Cache y W3 Total Cache).
8. Comprimir nuestras imágenes
Siempre que utilizamos imágenes en nuestras páginas o post de WordPress casi nunca están comprimidas, esto provoca que cuanto más pesada sea la imagen mas tarda en cargar la web, ya que estas imágenes se descargan en nuestro navegador.
Para comprimir las imágenes existen muchas programas y aplicaciones web pero una de las mas utilizadas en la aplicación web Smush.it
9. Compresión Gzip
Lo que hace la compresión Gzip es enviar nuestros documentos en un formato comprimido para que ocupen menos espacio y se distribuyan de forma mas rápida.
Para poder activar esta compresión en nuestro sitio debemos modificar el archivo .htaccess ubicado en el directorio raíz de nuestro WordPress e insertarle lo siguiente
<ifmodule mod_deflate.c> AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript </ifmodule>
10. Cachear contenido estático mod_expires
La caché de archivos puede ser inmensamente beneficiosa para la velocidad de una web. Básicamente: Si un usuario visita cinco páginas de nuestra web, no tiene por qué descargar los mismos archivos estáticos (como imágenes, css y javascript) cinco veces. El navegador puede almacenar esos archivos en el sistema para obtenerlos mucho más rápidamente, pero para ello necesita instrucciones del servidor.
<ifmodule mod_expires.c> ExpiresActive on ExpiresByType image/jpg "access plus 60 days" ExpiresByType image/png "access plus 60 days" ExpiresByType image/gif "access plus 60 days" ExpiresByType image/jpeg "access plus 60 days" ExpiresByType text/css "access plus 1 days" ExpiresByType image/x-icon "access plus 1 month" ExpiresByType application/pdf "access plus 1 month" ExpiresByType audio/x-wav "access plus 1 month" ExpiresByType audio/mpeg "access plus 1 month" ExpiresByType video/mpeg "access plus 1 month" ExpiresByType video/mp4 "access plus 1 month" ExpiresByType video/quicktime "access plus 1 month" ExpiresByType video/x-ms-wmv "access plus 1 month" ExpiresByType application/x-shockwave-flash "access 1 month" ExpiresByType text/javascript "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" </ifmodule>
11. Comprimir archivos CSS y javascript
Se pueden comprimir los archivos css y javascript para que pesen menos y asi mejorar la velocidad. Para ello existen varios plugins para comprimir css como javascript
Podemos utilizar un plugin para realizar estos comprimidos como este WP Minify.
12. Mover javascript al final
Moviendo los javascript al final de la pagina no conseguimos mejorar la velocidad pero si lo aparenta, al tener esta carga de archivos al final del todo la pagina se mostrara antes de que estén cargados y así la pagina empezara a mostrar contenido mas rápido aunque el tiempo total de la carga de la pagina sea el mismo.
Para ello debemos mover las llamadas de dichos javascript y situarlos justo antes de la etiqueta </body>
13. Eliminar datos externos
En ocasiones se suelen cargar archivos javascripts, css e imágenes desde otra web, esto ralentiza la web porque no es lo mismo cargar un archivo que esta en el mismo servidor que hacer una petición a un servidor externo y descargarlo desde este, este también tiene el gran inconveniente de que si el servidor externo esta caído puede afectar a la carga de la web.
Normalmente se utiliza para cargar archivos de redes sociales (facebook, twitter, google+ …), de chats y cualquier implementación que tengamos insertada en nuestra web. Por ello hay que evaluar si realmente necesitamos este servicio y si compensa el tiempo de descarga de lo que nos beneficia.
14. PhSpeed
Si después de realizar todo lo anterior no estas contento con la velocidad de WordPress lo siguiente seria ver nuestro producto PhSpeed para mejorar la velocidad. Es un sistema de cacheo muy agresivo que hemos desarrollado nosotros con el que consigues una velocidad asombrosa.
Aconsejo que antes de realizar cualquier modificación de nuestro WordPress debéis realizar una copia de seguridad.