Risposte:
Questa è una domanda molto più sicuro da usare e rimuovere le voci correlate dal postmeta e term_relationship, a differenza deathlocks interrogazione nella sua risposta.
Cambia {id} nell'id di ogni tabella di post di blog. Puoi combinare questa query per eseguire contemporaneamente tutte le tabelle di post, ma prova prima su una tabella. L'ho usato molte volte su installazioni WP singole.
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'
Dopo averlo eseguito, ottimizza il database in phpmyadmin.
E aggiungi questa riga nella parte superiore di wp-config.php per impedire future revisioni:
define('WP_POST_REVISIONS', 0);
o salva una revisione:
define('WP_POST_REVISIONS', 1);
C'è anche un plugin, WP Optimize che può aiutarti a farlo
Dal sito Web:
WP-Optimize è uno strumento di pulizia e ottimizzazione del database WordPress 2.9 ++. Non richiede PhpMyAdmin per ottimizzare le tabelle del database.
Ti consente di rimuovere revisioni post, commenti nella coda di spam, commenti non approvati in pochi clic.
Per eliminare tutte le revisioni di Wordpress, è possibile utilizzare questa query:
DELETE FROM wp_posts WHERE post_type = "revision";
DELETE FROM wp_n_posts WHERE post_type = "revision"
; per n volte, giusto? ma questo è abbastanza noioso :(
Puoi anche aggiungere questo codice al functions.php
file del tuo tema :
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 3);
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', false);
Questo codice controlla se WP_POST_REVISIONS
è stato impostato il limite wp-config.php
, In caso contrario passa un parametro alla funzione che limita le revisioni post. Nell'esempio sopra, i post sono limitati a 3 revisioni.
Questa è una buona soluzione quando si creano temi per le persone che non sanno (o non vogliono) aggiungere codice.
Tratto da wp-functions.com
Grazie per la risposta, markratledge. Qualcosa nella sintassi riguardante {id} non ha funzionato per me. Ho cambiato {id} in 4009, uno dei miei ID post, ma senza successo. Ho trovato una soluzione su https://dev-notes.eu/2017/11/manage-and-safely-delete-revisions-in-wordpress/
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';
Funzionava bene.