Как отключить ревизии постов в WordPress для удаления старых версий

Ревизии постов в WordPress — это полезная функция, которая автоматически сохраняет версии записи при каждом её обновлении. Это позволяет при необходимости откатиться к предыдущей версии. Но с течением времени количество ревизий может значительно увеличиться, что приводит к раздутию базы данных и замедлению работы сайта. В этой статье мы подробно разберём, как отключить ревизии постов, как ограничить их количество и как безопасно удалить старые версии из базы данных.

Что такое ревизии постов в WordPress и зачем их отключать

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

  • Увеличению размера таблицы wp_posts и базы данных в целом.
  • Замедлению запросов к базе данных, особенно на больших сайтах.
  • Проблемам с бэкапами, так как увеличивается объём данных.

В таких случаях разумно ограничить количество ревизий или полностью их отключить, если восстановление старых версий не требуется.

Как отключить ревизии постов через wp-config.php

Чтобы отключить ревизии, нужно добавить в файл wp-config.php следующую строку:

define('WP_POST_REVISIONS', false);

Это полностью отключит сохранение новых ревизий. Однако старые ревизии останутся в базе данных, и их нужно будет удалить отдельно.

Если вы хотите не отключать ревизии полностью, а ограничить их количество, то вместо false можно указать число, например:

define('WP_POST_REVISIONS', 3);

Это позволит хранить максимум 3 ревизии на пост.

Как удалить старые ревизии из базы данных

Удаление старых ревизий можно сделать вручную с помощью SQL-запросов или с помощью плагинов. Ниже рассмотрим оба варианта.

Удаление ревизий через SQL-запрос

Для удаления всех ревизий можно выполнить такой запрос в базе данных (через phpMyAdmin или аналог):

DELETE FROM wp_posts WHERE post_type = 'revision';

Если у вас префикс таблиц отличный от wp_, замените его соответствующим образом.

Этот запрос удалит все ревизии, освободив место в базе данных. Но будьте осторожны: после этого откатиться к старым версиям через админку не получится.

Удаление ревизий с помощью плагинов

Если вы не хотите работать напрямую с базой, используйте плагины:

  • WP-Optimize — позволяет удалить ревизии, а также оптимизировать базу данных и кэшировать сайт. Ссылка для установки: https://ru.wordpress.org/plugins/wp-optimize/
  • Clearfy Pro — многофункциональный плагин для оптимизации сайта, включая управление ревизиями. Подробнее на https://wpshop.ru/clearfy-pro/

Как программно удалить ревизии в WordPress: пример функции

Для автоматизации удаления ревизий можно использовать следующий код в файле functions.php активной темы или в собственном плагине:

function wpmark_delete_post_revisions() {
    global $wpdb;
    $revisions = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_type = 'revision'");
    if (!empty($revisions)) {
        foreach ($revisions as $revision_id) {
            wp_delete_post($revision_id, true); // true - принудительное удаление
        }
    }
}
// Запускаем функцию вручную или привязываем к хуку
// add_action('init', 'wpmark_delete_post_revisions');

Эта функция получает все ID ревизий и удаляет их с помощью стандартной функции wp_delete_post(). Можно вызвать её вручную или привязать к нужному хуку для периодической очистки.

Как предотвратить конфликт с другими плагинами и сохранить безопасность

При работе с ревизиями следует учитывать, что некоторые плагины для SEO, редакторы контента или системы контроля версий могут использовать ревизии для своих задач. Полное отключение ревизий может привести к проблемам совместимости.

Рекомендуется тестировать изменения на тестовом сайте, а также делать резервные копии базы перед удалением ревизий.

Если вы используете плагин Clearfy Pro, там есть удобный интерфейс для управления ревизиями и безопасного удаления ненужных версий без риска повредить сайт.

Выводы и рекомендации по работе с ревизиями

  • Если вам не нужны ревизии — отключайте их через wp-config.php с define('WP_POST_REVISIONS', false);.
  • Ограничьте количество ревизий, если планируете их использовать, например до 3-5.
  • Регулярно удаляйте старые ревизии, чтобы оптимизировать базу данных.
  • Используйте проверенные плагины для автоматизации и безопасности.
  • Всегда делайте резервные копии перед массовым удалением данных.
Как удалить и заблокировать загрузочные файлы в WordPress
05.02.2026
Оптимизация базы данных WordPress для ускорения сайта
01.11.2025
Как автоматизировать создание и удаление временных файлов в WordPress
23.02.2026
Автоматический импорт продуктов в WooCommerce через CSV: пошаговое руководство
01.01.2026
Как создать автоматический снимок экрана страницы в WordPress
28.01.2026