Как настроить автоматическое сохранение черновиков в WordPress

Автоматическое сохранение черновиков в WordPress — важная функция, которая помогает не потерять изменения при редактировании записей и страниц. По умолчанию WordPress сохраняет черновики каждые 60 секунд, но иногда этого недостаточно, особенно при работе с большими материалами или медленным интернет-соединением. В этой статье мы подробно рассмотрим, как настроить и улучшить работу автосохранения черновиков, а также рассмотрим полезные плагины и примеры кода для тонкой настройки.

Что такое автосохранение в WordPress и зачем его настраивать

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

Настройка автосохранения важна, чтобы:

  • Минимизировать риск потери данных при редактировании;
  • Снизить нагрузку на сервер при частых сохранениях;
  • Оптимизировать работу редактора для конкретных задач и проектов.

В стандартном варианте WordPress не позволяет изменять этот интервал через админку, придется использовать код или плагины.

Как изменить интервал автосохранения с помощью кода

Для изменения интервала автосохранения черновиков можно использовать фильтр WordPress autosave_interval. Ниже пример функции, которая уменьшит интервал автосохранения до 30 секунд.

function wpcource_autosave_interval() {
    return 30; // Интервал в секундах
}
add_filter('autosave_interval', 'wpcource_autosave_interval');

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

Если необходимо увеличить интервал, например, до 5 минут (300 секунд), замените число в функции:

function wpcource_autosave_interval() {
    return 300;
}
add_filter('autosave_interval', 'wpcource_autosave_interval');

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

Отключение автосохранения: когда и как

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

function wpcource_disable_autosave() {
    wp_deregister_script('autosave');
}
add_action('wp_print_scripts', 'wpcource_disable_autosave');

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

Плагины для улучшения автосохранения и управления версиями

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

  • WP Autosave Settings — позволяет через интерфейс менять интервал автосохранений, а также отключать их.
  • Revision Manager TMC — расширенный менеджер ревизий и автосохранений с возможностью удаления старых и настройки количества сохранений.
  • Better Autosave — оптимизирует работу автосохранений для тяжелых страниц, снижая нагрузку на сервер и улучшая UX.

Установка и настройка плагинов обычно производится через админку WordPress, в разделе «Плагины».

Практический пример: уведомление пользователя об автосохранении

Иногда полезно показать пользователю, когда был сделан последний автосейв. Для этого можно добавить небольшой скрипт, который будет выводить время последнего сохранения.

Добавим следующий код в functions.php для подключения нашего скрипта:

function wpcource_enqueue_autosave_notice() {
    wp_enqueue_script('wpcource-autosave-notice', get_template_directory_uri() . '/js/autosave-notice.js', array('jquery'), '1.0', true);
}
add_action('admin_enqueue_scripts', 'wpcource_enqueue_autosave_notice');

Создайте файл autosave-notice.js в папке вашей темы /js/ со следующим содержимым:

jQuery(document).ready(function($) {
    $(document).ajaxComplete(function(event, xhr, settings) {
        if (settings.data && settings.data.indexOf('action=autosave') !== -1) {
            var now = new Date();
            var timeString = now.toLocaleTimeString();
            if ($('#autosave-notice').length === 0) {
                $('#wpcontent').prepend('<div id="autosave-notice" style="background:#dff0d8;padding:10px;margin-bottom:10px;border:1px solid #d6e9c6;">Автосохранение выполнено: ' + timeString + '</div>');
            } else {
                $('#autosave-notice').text('Автосохранение выполнено: ' + timeString);
            }
        }
    });
});

Этот скрипт будет отслеживать ajax-запросы автосохранения и выводить сообщение с временем последнего сохранения над основным контентом админки.

Как проверить работу автосохранения и восстановить черновик

Чтобы убедиться, что автосохранение работает, откройте любую запись или страницу и начните редактировать. Если вы отключите интернет или браузер неожиданно закроется, при следующем открытии записи WordPress предложит восстановить последний черновик.

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

Если автосохранения не происходят, проверьте:

  • Не отключен ли скрипт autosave (см. выше);
  • Работают ли ajax-запросы на сайте (нет ли ошибок в консоли браузера);
  • Не конфликтуют ли плагины с автосохранением;
  • Не превышен ли лимит памяти PHP и другие серверные настройки.

Заключение

Автоматическое сохранение черновиков — важная часть редактора WordPress, которая помогает защитить контент от потери. Настройка интервала автосохранения и оптимизация работы с помощью кода и плагинов позволяет улучшить производительность и удобство работы. Используйте примеры из статьи, чтобы адаптировать автосохранение под задачи вашего проекта на wpcource.ru.

Как создать автоматический Sitemap в WordPress без плагинов
25.12.2025
Автоматическое обновление плагинов и тем в WordPress без риска
28.12.2025
Удаление неиспользуемых терминов таксономий в WordPress
09.02.2026
Как удалить старые изображения в WordPress без плагинов
22.03.2026
WooCommerce: автоматическое изменение статуса заказа при оплате через платежные системы
28.05.2026

Обучение разработке на WordPress, как создавать темы, плагины. Подробнее об обучении.