Удаление редакций в WordPress

Admin MySQL, PHP, WordPress

Во время редактирования статей в WordPress, он автоматически, во избежании потерь информации, создаёт копии правок. Они называются редакциями или ревизиями. При большом количестве статей и правок, эта лишняя информация увеличивает объём базы данных MySQL.

Ограничение ревизий

Для ограничения количества редакций в конец файла wp-config.php, который находится в корневой директории сайта, записываем следующую информацию:

/** Ограничиваем количество редакций */
define('WP_POST_REVISIONS', 3);

где указанная цифра — это количество сохраняемых предыдущих правок.

Удаление всех ревизий

Для удаления всех накопившихся ревизий на сайте, можно запустить выполнение скрипта через файл functions.php своей темы WordPress. Для этого, вставляем в этот файл следующий код:

global $wpdb;
$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, следует сделать резервную копию. Потому что всегда может что-то пойти не так…

Удаление неиспользуемых таблиц

В отдельной статье читайте удаление таблиц оставленных плагинами.

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"Удаление редакций в WordPress"