Antworten:
Dies ist eine viel sicherere Abfrage, die verwandte Einträge aus dem Postmeta und term_relationship entfernt, im Gegensatz zu Deathlocks- Abfragen in seiner Antwort.
Ändern Sie die {id} in die ID jeder Blogpost-Tabelle. Sie können diese Abfrage kombinieren, um alle Post-Tabellen gleichzeitig auszuführen. Versuchen Sie dies jedoch zuerst an einer Tabelle. Ich habe es oft bei einzelnen WP-Installationen verwendet.
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'
Optimieren Sie nach dem Ausführen die Datenbank in phpmyadmin.
Fügen Sie diese Zeile oben in der Datei wp-config.php hinzu, um zukünftige Überarbeitungen zu verhindern:
define('WP_POST_REVISIONS', 0);
oder speichern Sie eine Revision:
define('WP_POST_REVISIONS', 1);
Es gibt auch ein Plugin, WP Optimize , das Ihnen dabei helfen kann
Von der Website:
WP-Optimize ist ein WordPress 2.9 ++ - Tool zur Bereinigung und Optimierung von Datenbanken. PhpMyAdmin ist nicht erforderlich, um Ihre Datenbanktabellen zu optimieren.
Sie können Post-Revisionen, Kommentare in der Spam-Warteschlange und nicht genehmigte Kommentare mit wenigen Klicks entfernen.
Mit dieser Abfrage können Sie alle Ihre Wordpress-Revisionen löschen:
DELETE FROM wp_posts WHERE post_type = "revision";
DELETE FROM wp_n_posts WHERE post_type = "revision"
; für n mal, richtig? aber das ist ziemlich langweilig :(
Sie können diesen Code auch zur functions.php
Datei Ihres Themas hinzufügen :
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', 3);
if (!defined('WP_POST_REVISIONS')) define('WP_POST_REVISIONS', false);
Dieser Code prüft, ob ein WP_POST_REVISIONS
Limit festgelegt wp-config.php
wurde. Wenn dies nicht der Fall ist, übergibt er einen Parameter an die Funktion, die das Nacharbeiten begrenzt. Im obigen Beispiel sind Beiträge auf 3 Revisionen beschränkt.
Dies ist eine gute Lösung, wenn Sie Themen für Personen erstellen, die nicht wissen, wie sie Code hinzufügen sollen (oder wollen).
Entnommen aus wp-functions.com
Danke für die Antwort, markratledge. Etwas in der Syntax bezüglich der {id} hat bei mir nicht funktioniert. Ich habe {id} in 4009 geändert, eine meiner Post-IDs, aber keinen Erfolg. Ich habe eine Lösung unter https://dev-notes.eu/2017/11/manage-and-safely-delete-revisions-in-wordpress/ gefunden.
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';
Das hat gut funktioniert.