Αν τρέχετε κάποια ιστοσελίδα με WordPress, σίγουρα θα γνωρίζετε τι είναι τα revisions. Τα revisions ή αναθεωρήσεις είναι cached δεδομένα που αποθηκεύονται ενώ ετοιμάζετε κάποια δημοσίευση. Έτσι αν έχετε ενεργοποιημένα τα revisions θα πρέπει κάθε μια με δύο βδομάδες να διαγράφετε τα αποθηκευμένα δεδομένα, καθώς δεν είναι απαραίτητα και προσθέτουν «βάρος» στη βάση δεδομένων σας.
Το πρόβλημα είναι ότι αν κάποια στιγμή ξεχάσετε να τα διαγράψετε, θα μαζευτούν τόσα πολλά, που τα plugins που υπάρχουν (Better Delete Revision) για την αυτόματη διαγραφή τους, θα βγαίνουν timed out.
Το άρθρο απευθύνεται σε αυτούς που δεν φιλοξενούν την ιστοσελίδα τους στο wοrdpress.com, και έχουν πρόσβαση στην SQL.
Αν αναζητήσετε στο Google για κάποια λύση, υπάρχει μια απλή SQL εντολή, αλλά δεν θα πρέπει να τη χρησιμοποιήσετε στην WordPress εγκατάστασή σας. Η εντολή θα διαγράψει τις αναθεωρήσεις, αλλά θα αφήσει όλα τα μετα-δεδομένα στη βάση δεδομένων σας.
Μην χρησιμοποιήσετε αυτή την εντολή:
DELETE FROM wp_posts WHERE post_type = "revision";
Πριν ξεκινήσουμε πάρτε ένα backup της βάσης δεδομένων σας.
Μετά πηγαίνετε στο πλαίσιο εκτέλεσης των SQL εντολών και κάντε αντιγραφή (ctrl+C) – επικόλληση (ctrl+V) την παρακάτω εντολή:
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'
Τρέξτε την εντολή από το GO.
Αν θέλετε να απενεργοποιήσετε όλα τα revisions, μπορείτε να προσθέσετε τον παρακάτω κώδικα στο κάτω μέρος του αρχείου wp_config.php στο / του WordPress.
define('WP_POST_REVISIONS', false);