Caché en WordPress y elementos transitorios

Home » Blog » Caché en WordPress y elementos transitorios

WordPress al ser un gestor de contenidos dinámico, es decir que permite actualizar el contenido desde su gestor, requiere almacenar información en una base de datos, esto hace que a la hora de acceder al contenido se ralentice ya que tiene que consultar que contenido. Pero podemos realizar ciertas tareas de almacenamiento en caché para mejorar la velocidad de carga de la información.

¿Qué es la cache?

La caché es un conjunto de mejoras de acceso a la información, y podemos implementarla en varios puntos:

  • En el navegador: En una web hay contenido que se interpreta directamente en los navegadores de los usuarios como por ejemplo el CSS y html.  Si por ejemplo nuestro css no ha tenido cambios desde la última visita de un usuario, para que lo vamos a cargar de nuevo? Lo recuperamos de la cache del navegador.
  • En el servidor: WordPress está desarrollado en PHP, que se interpreta en el servidor. Es decir un navegador no entiende de PHP, así que es el servidor quien interpreta el PHP, lo convierte en HTML y se lo manda al navegador. Podemos indicar al servidor que recuerde en memoria esas transformaciones y con nuevas solicitudes evite interpretarlo de nuevo. la caché de servidor hay que usarlo con contenidos en los que su actualización no sea muy frecuente o que no importe mostrar datos desactualizados durante un periodo de tiempo.
  • En el núcleo de WordPress: Cuando desarrollamos bajo el CORE de WordPress podemos recurrir a los elementos transitorios para almacenarlos durante un periodo de tiempo determinado, abajo los comentamos. De nuevo hay que ser conscientes de que puede existir cierta desactualización.
  • En Mysql: El almacenamiento en caché en Mysql evita acceder al disco para recuperar datos, y guarda las consultas en memoria. WordPress por defecto (como cualquier otro gestor de contenidos) realiza en su instalación estándar como 20 conexiones a la base de datos, y con cada plugin estas consultas se elevan, hasta 40, 50, etc.

Elementos transitorios

De todas las posibilidades de mejorar el rendimiento de nuestra web, como desarrolladores, el que más nos puede afectar es el uso de los llamados elemento transitorios de WordPress. Veamos un ejemplo de su funcionamiento:

if ( false === ( $mi_query = get_transient( 'my_query_almacenada' ) ) ) {
$mi_query= new WP_Query( 'cat=15' );
set_transient( 'my_query_almacenada', $mi_query, 60*60*24*7 );
}else{
//usamos $mi_query
}

En este ejemplo, usamos get_transient para recuperar el elemento transitorío special_query_results. Si es false (porque ha caducado) se hace una consulta a Mysql y la guardamos como variable transitoria set_transient.

  • my_query_almacenada: es el nombre único de mi variable transitoria.
  • $mi_query: Es el valor de mi variable, en este caso un array con los datos extraídos de la BD.
  • 60*60*24*7: Tiempo en segundos.

Estamos almacenando la consulta de SQL durante una semana. Es decir cada semana esa consulta se realiza, pero el resto del tiempo no se hace una nueva consulta a la base de datos.

Consulta el API de los elementos transitorios.

Plugin recomendado

El plugin que suelo usar para cacheo de servidor es:

WP Super Cache


Categorías


Foto de Iñigo Mezo Alvarez

IÑIGO MEZO ALVAREZ (IMAcreste)


Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Las reseñas son opiniones que las personas dejan en la página local de Google. Si son positivas, estas reseñas ayudarán a mejorar la confianza y credibilidad de una marca.

Participa en nuestro sorteo enviando un email con tu nombre y el asunto «Sorteo AUDITORÍA SEO». Se realizara un sorteo cada mes.