Автоматическое сохранение (автосейв) и автобэкап в WordPress — важные функции, которые помогают защитить контент от потери, но в некоторых случаях они могут создавать дополнительную нагрузку на сервер или приводить к конфликтам с плагинами резервного копирования. В этой статье расскажем, как грамотно отключить автобэкап в WordPress, не рискуя потерять данные, и приведём примеры кода для решения задачи.
Зачем отключать автосохранение и автобэкап в WordPress
По умолчанию WordPress сохраняет посты и страницы каждые 60 секунд в виде автосохранений (revisions). Это удобно, если браузер упадёт или вы случайно закроете вкладку, но:
- На сайтах с большим объёмом контента автосохранения создают лишние записи в базе, увеличивая размер таблиц
wp_postsи замедляя работу; - Автоматические бэкапы плагинов могут дублировать данные, если у вас уже настроена внешняя система резервного копирования;
- Некоторые хостинги накладывают ограничения на использование ресурсов, и частые автосохранения могут вызвать превышение лимитов.
Если вы уверены, что у вас есть надёжная система резервного копирования, можно снизить нагрузку, отключив или уменьшив частоту автосейвов.
Как отключить автосохранение (autosave) WordPress через код
Для отключения автосохранений можно использовать хук wp_check_post_lock, либо полностью отключить скрипт автосейва на фронте. Например, добавьте в functions.php вашей темы или в отдельный плагин следующий код:
function wpcheck_disable_autosave() {
wp_deregister_script('autosave');
}
add_action('wp_print_scripts', 'wpcheck_disable_autosave');Этот код отключит загрузку JavaScript автосохранения, и WordPress перестанет сохранять черновики автоматически.
Важно: после этого все автосохранения и блокировки постов будут отключены, поэтому если вы работаете с несколькими редакторами — будьте осторожны.
Альтернативный способ — изменить интервал автосохранения
Если полностью отключать не хочется, можно увеличить интервал автосохранения. Добавьте в wp-config.php:
define('AUTOSAVE_INTERVAL', 300); // Автосохранение каждые 5 минут вместо 1Так вы снизите частоту автосохранений, уменьшив нагрузку на сервер.
Отключение ревизий для уменьшения количества автосохранений
Ревизии — это сохранённые версии записей, которые тоже занимают место в базе данных. Для их отключения или ограничения количества ревизий добавьте в wp-config.php:
define('WP_POST_REVISIONS', 0); // Полностью отключить ревизии
// или
// define('WP_POST_REVISIONS', 3); // Оставить только 3 ревизии для каждой записиОграничение ревизий помогает держать базу данных в порядке и ускоряет запросы.
Отключение автобэкапов плагинов резервного копирования
Многие популярные плагины для бэкапа, такие как UpdraftPlus, BackWPup и другие, имеют встроенные автосоздания копий, которые могут конфликтовать с системными автосохранениями или создавать избыточные копии.
Чтобы отключить ненужные автобэкапы:
- Изучите настройки плагина — часто есть возможность настроить расписание или отключить автоматическое создание копий.
- Если плагин не даёт гибко управлять автобэкапами, можно использовать фильтры или хуки плагина (зависит от конкретного плагина).
Например, для UpdraftPlus можно отключить автоматическое расписание так:
add_filter('updraftplus_scheduled_backup', '__return_false');Пример комплексного решения по отключению автосохранения и ревизий с минимальным риском
Объединим всё в одном коде для добавления в functions.php или в плагин:
function wpcheck_disable_autosave_and_revisions() {
wp_deregister_script('autosave');
}
add_action('wp_print_scripts', 'wpcheck_disable_autosave_and_revisions');
// Отключение ревизий
add_filter('wp_revisions_to_keep', function() {
return 0;
}, 10, 2);Этот подход полностью отключит автосохранения и удалит ревизии, что подходит для сайтов с хорошей системой бэкапов.
Что делать, чтобы не потерять данные после отключения
Перед отключением автосохранений обязательно настройте один из следующих вариантов:
- Плагин резервного копирования с внешним хранилищем (Dropbox, Google Drive и т.д.);
- Автоматическое создание дампов базы данных на уровне хостинга;
- Мониторинг и уведомления о проблемах с сайтом (например, с помощью WPCheck).
Так вы сможете восстановить данные при сбое без потерь.
Заключение по теме отключения автобэкапа в WordPress
Отключение автосохранения и ревизий помогает оптимизировать производительность сайта и снизить нагрузку на базу данных, особенно на больших проектах. Однако это требует внимательного подхода к резервному копированию, чтобы не потерять контент.
Если нужна автоматизация и удобный мониторинг состояния сайта, рекомендую обратить внимание на WPCheck — плагин для комплексного контроля здоровья WordPress.