web-dev-qa-db-fra.com

Comment supprimer les révisions post?

Je n'ai pas fixé de limite au nombre de révisions, ce qui fait que certaines de mes publications ont plus de 20 révisions. Comment supprimer ces révisions?

En passant, j'utilise WPMU et j'ai beaucoup de blogs, alors comment supprimer les révisions WordPress pour tous mes blogs?

9
hugemeow

Il s'agit d'une requête beaucoup plus sûre à utiliser et supprimera les entrées associées des requêtes postmeta et term_relationship, contrairement à deathlocks query dans sa réponse.

Modifiez {id} en identifiant de la table de chaque publication de blog. Vous pouvez combiner cette requête pour exécuter toutes les tables de publication en même temps, mais essayez ceci d'abord sur une table. Je l'ai utilisé à plusieurs reprises sur des installations simples WP.

DELETE a,b,c
FROM wp_{id}_posts a
LEFT JOIN wp_{id}_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_{id}_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'

Après l'avoir exécuté, optimisez la base de données dans phpmyadmin.

Et ajoutez cette ligne près du sommet de wp-config.php pour éviter les révisions futures:

define('WP_POST_REVISIONS', 0);

ou enregistrer une révision:

define('WP_POST_REVISIONS', 1);
9
markratledge

Il existe également un plugin, WP Optimize qui peut vous aider à le faire.

Sur le site:

WP-Optimize est un outil de nettoyage et d’optimisation de la base de données WordPress 2.9 ++. Il n’est pas nécessaire que PhpMyAdmin optimise vos tables de base de données.

Il vous permet de supprimer les révisions de publication, les commentaires dans la file d'attente de courrier indésirable, les commentaires non approuvés en quelques clics.

2
darronz

Vous pouvez utiliser le plug-in WP Sweep pour nettoyer les révisions ultérieures. Après avoir activé le plugin, allez dans Outils "Balayer pour nettoyer votre base de données WordPress.

0
Ashin

Vous pouvez également ajouter ce code au fichier functions.php de votre thème:

if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 3);
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', false);

Ce code vérifie si WP_POST_REVISIONS limite a été défini dans wp-config.php. Si ce n’est pas le cas, il passe un paramètre à la fonction qui limite les révisions ultérieures. Dans l'exemple ci-dessus, les publications sont limitées à 3 révisions.

C'est une bonne solution lors de la création de thèmes pour les personnes qui ne savent pas (ou ne veulent pas) ajouter du code.

Tiré de wp-functions.com

0
NickMcB

Pour supprimer toutes vos révisions Wordpress, vous pouvez utiliser cette requête:

DELETE FROM wp_posts WHERE post_type = "revision";

0
deathlock