Во время редактирования статей в WordPress, он автоматически, во избежании потерь информации, создаёт копии правок. Они называются редакциями или ревизиями. При большом количестве статей и правок, эта лишняя информация увеличивает объём базы данных MySQL.
Ограничение ревизий
Для ограничения количества редакций в конец файла wp-config.php, который находится в корневой директории сайта, записываем следующую информацию:
define('WP_POST_REVISIONS', 3);
где указанная цифра — это количество сохраняемых предыдущих правок.
Удаление всех ревизий
Для удаления всех накопившихся ревизий на сайте, можно запустить выполнение скрипта через файл functions.php своей темы WordPress. Для этого, вставляем в этот файл следующий код:
$wpdb->query(
"
DELETE a,b,c FROM $wpdb->posts a
LEFT JOIN $wpdb->term_relationships b ON (a.ID = b.object_id)
LEFT JOIN $wpdb->postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'
"
);
Затем зайти на свой сайт и обновить страницу. В результате все редакции будут удалены.
После этого, вышеприведенный код надо закомментировать в файле functions.php, чтобы он не срабатывал при каждой загрузки страницы и не создавал лишнюю нагрузку на сервер.
При выполнении этой процедуры, как и любой другой, с базой данных MySQL, следует сделать резервную копию. Потому что всегда может что-то пойти не так…
Удаление неиспользуемых таблиц
В отдельной статье читайте удаление таблиц оставленных плагинами.