Contenido

Usando la caché interna de WordPress

16 mar

+ 9

Desde la versión 2.0 de WordPress, este tiene la fácultad de almacenar datos en caché que podemos usar en nuestros plugins/themes. Esta caché no es la misma que los plugins que cachéan la salida por pantalla usan.

Caché interna

La caché interna de WordPress, no es más que una forma enmascarada de usar $GLOBALS para almacenar datos con el fin de evitar peticiones innecesarias. Mediante el uso de una serie de funciones (que veremos más adelante) esta tarea es realmente sencilla.

Activar caché interna

Para activar la caché interna de nuestro WordPress, deberemos editar el fichero wp-config.php y añadir o modificar la línea siguiente:

define('WP_CACHE', true);

Funciones de la caché interna

Las funciones con las que podremos trabajar con dicha funcionalidad, se encuentran en el fichero cache.php de la carpeta wp-includes/ de nuestro WordPress.

wp_cache_add()

Función que se encarga de almacenar en caché un dato. Este dato irá referenciado por una llave y un flag para agruparlas.

wp_cache_add($key, $data, $flag = '', $expire = 0)
  • $key: Llave a la que irán referenciados los datos.
  • $data: Datos que queremos almacenar en caché.
  • $flag: Agrupación de elementos en caché, pueden ser almacenados en los mismos directorios.
  • $expire: Segundos de duración en memoria (por defecto son 900seg).

wp_cache_delete()

Función para eliminar de caché.

wp_cache_delete($id, $flag = '')
  • $id: ID o llave con la que hemos introducido los datos previamente.
  • $flag: Agrupador.

wp_cache_get()

Función que nos devuelve un dato alojado en caché.

wp_cache_get($id, $flag = '')
  • $id: ID o llave introducida previamente.
  • $flag: Agrupador.

wp_cache_replace()

Función encargada de reemplazar datos de la caché. Antes de reemplazarlos, nos devuelve los valores antiguos.

wp_cache_replace($key, $data, $flag = '', $expire = 0)
  • $key: Llave indentificatoria.
  • $data: Datos a almacenar
  • $flag: Agrupador.
  • $expire: Segundos de duración de los datos en caché.

wp_cache_set()

Función que sobreescribe los datos ya almacenados en caché.

wp_cache_set($key, $data, $flag = '', $expire = 0)
  • $key: Llave indentificatiorias.
  • $data: Datos a guardar.
  • $flag: Agrupador.
  • $expire: Segundos de vida de los datos en caché.

Otras funciones

  • wp_cache_init(): Inicializamos un nuevo objeto de caché.
  • wp_cache_flush(): Borramos todos los datos almacenados en caché.
  • wp_cache_close(): Guardamos los datos de caché. Esta función es ejecutada al cerrar la sessión de WordPress.

Ejemplo de uso

$news = wp_cache_get('news');
if($news == false) {
	$news = fetch_rss("http://www.anieto2k.com/feed/");
	wp_cache_set('news', $news);
}

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.