By default, WordPress stores revisions for all your posts when you draft or update them. It’s a useful feature when you want to go back to previous versions of your posts and/or restore them. However, you may not really care about revisions and if you run a WordPress site long enough, these revisions will accumulate, unnecessarily bloating the wp_posts
table and taking up space in the database. Luckily there is a simple way to limit or disable the revisions altogether and remove those that are already stored in the database.
tl;dr
- Change the WordPress revision behavior
- To disable, add
define('WP_POST_REVISIONS', false);
to yourwp-config.php
file. - To limit the revisions, add
define('WP_POST_REVISIONS', <max revisions>);
to yourwp-config.php
file, where<max revisions>
is the number of maximum revisions that you would like to keep per post.
- To disable, add
- Connect to the WordPress database and run
DELETE FROM wp_posts WHERE post_type='revision';
Disable post revisions
To disable post revisions, you have to set the WP_POST_REVISIONS
parameter to false
, which you can do by adding the following instruction into your wp-config.php
file:
define('WP_POST_REVISIONS', false);
Limit post revisions
If you rather want to limit the number of revisions that WordPress stores, you can specify the maximum number instead of false
. For example, to only allow a maximum of 3 (+1 autosave), specify:
define('WP_POST_REVISIONS', 3);
Remove post revisions
Post revisions are stored as separate entries in wp_posts
with the column post_type='revision'
. To clean them up, simply execute the following statement in the database:
DELETE FROM wp_posts WHERE post_type='revision';
Once your statement has finished, you have successfully removed old WordPress post revisions.