Las revisiones de WordPress te ayudan a mantener documentados los cambios en tus artículos, y así poder recuperar versiones antiguas. Los motivos por los que se puede querer recuperar alguna de las revisiones son varios, desde deshacer la última modificación, hasta arreglar algún problema de actualización sobre la base de datos. Por eso es recomendable mantener esta funcionalidad activada.

Desactivarla por completo

Si no necesitas esta característica de WordPress, lo mejor es desactivarla. Pero debes estar seguro. En mi experiencia personal, nunca está de más cubrirse las espaldas.

Si estás completamente seguro, debes añadir esta línea al archivo de configuración wp-config.php:

define(‘WP_POST_REVISIONS’, false);

Limitar el número de revisiones

revisiones

Esta es la mejor opción para la mayoría de las instalaciones. En vez de deshabilitar las revisiones, lo que hacemos es limitar el número máximo permitido para cada entrada. De este modo, podremos recuperarnos en caso de errores o si no nos gustan los cambios realizados; al mismo tiempo, no aumentaremos exageradamente el tamaño de la base de datos, que con el tiempo habrá que limpiar y optimizar sí o sí, pero eso no implica abusar de ella.

Para limitar el número de revisiones, debes añadir esta línea al archivo de configuración wp-config.php, igual que antes:

define(‘WP_POST_REVISIONS’, 3);

En mi caso he puesto 3, simplemente cambia este número por el que quieras y ya está.

Aumentar el tiempo entre autoguardados

Relacionado con lo anterior, están los autoguardados. Por defecto, WordPress guarda automáticamente la entrada que estás editando cada minuto. Ten en cuenta que si, por ejemplo, hemos puesto 3 revisiones como máximo, podrías pensar que en tres minutos nos quedaríamos sin el anterior guardado manual que hayamos hecho. Pero eso no es cierto. WordPress sobrescribe el autoguardado con uno nuevo, no crea una revisión nueva. Si tu intención era cambiar el tiempo automático de guardado por esa razón, puedes evitarte el trabajo.

Algunos casos en los que beneficia el tener un intervalo mayor son, por ejemplo, si tu conexión es lenta, o tu ordenador es muy antiguo. Cuando se está guardando, no puedes hacer algunas modificaciones en la entrada, entre ellas publicarla o guardarla. Más que otra cosa, se trata de una opción de índole puramente personal.

Para cambiar el tiempo entre cada autoguardado, debes añadir esta línea al archivo de configuración wp-config.php:

define(‘AUTOSAVE_INTERVAL’, 300);

En este caso he puesto 300. Este número es el intervalo en segundos. Por lo tanto, se guardará la entrada cada 5 minutos. Por supuesto, puedes escribir el número que desees para adaptarlo a tus gustos personales. De cinco a quince minutos me parece un rango razonable en la mayoría de los casos.

Borrar revisiones

Hasta ahora hemos configurado el comportamiento de nuestro CMS favorito. ¿Pero qué pasa con las revisiones antiguas? Acertaste, siguen ocupando espacio en la base de datos. Para librarnos de ellas, tenemos dos caminos: el sencillo y el divertido.

  • El sencillo: Buscar e instalar algunos de los diversos plugins que configuran y borrar las revisiones. Como yo no los uso no puedo recomendar uno en particular. Buscad en wordpress.org, y fiaros de la puntuación y los comentarios de los usuarios. También deberíais llegar al foro de soporte, para ver si hay errores recientes, y si el desarrollador se preocupa de revisar y responder ante las dudas de la comunidad. Por supuesto, la fecha de la última actualización no debería más antigua de un par de meses.
  • El divertido: Podemos ejecutar código SQL en nuestra base de datos para eliminar las revisiones. Obviamente, debes saber lo que haces, ya que si tocas lo que no debes puedes estropear tu WordPress. Si todavía quieres intentarlo, sigue leyendo.

Consulta SQL

sql

Lo primero haz una copia de seguridad de la base de datos, como siempre cuando pruebas código copiado de una web, más aún si no lo entiendes. Una vez hecho esto, accede a tu gestor de bases de datos (normalmente phpmyadmin) y ejecuta el siguiente código:

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 )
LEFT JOIN wp_term_taxonomy d ON ( b.term_taxonomy_id = d.term_taxonomy_id)
WHERE a.post_type = ‘revision’
AND d.taxonomy != ‘link_category’;

Debes substituir wp_ por el prefijo que usa tu instalación de WordPress. Lo puedes mirar directamente en la base de datos o en el archivo wp-config.php, en la opción $table_prefix. Resumiendo, busca en las cuatro tablas toda referencia a las revisiones y las elimina. ¡¡¡SE BORRARÁN TODAS LAS REVISIONES!!!

Espero que os sirva esta entrada. Como siempre, si tenéis alguna duda preguntad en los comentarios, o usad el formulario de contacto de la web.