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

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

Почему важно автоматизировать создание резервных копий WordPress

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

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

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

Основные способы автоматизации резервных копий в WordPress

Использование плагинов для автоматического бэкапа

Наиболее популярный способ — установить плагин с функцией автоматического резервного копирования. Вот несколько лучших вариантов:

  • UpdraftPlus — один из самых популярных бесплатных плагинов, поддерживает планирование, хранение копий в облаке и восстановление в один клик.
  • BackWPup — позволяет создавать резервные копии базы данных и файлов, загружать их на Dropbox, Google Drive, FTP и другие сервисы.
  • WP Time Capsule — делает инкрементальные бэкапы, что экономит место и трафик, отлично подходит для больших сайтов.

Например, для настройки UpdraftPlus достаточно перейти в раздел настроек плагина, выбрать периодичность (например, ежедневно), указать место хранения (Google Drive, Dropbox, FTP или локальную папку) и сохранить изменения.

Пример настройки UpdraftPlus для ежедневных бэкапов с загрузкой в Google Drive

После установки и активации плагина:

  1. Перейдите в Настройки > UpdraftPlus Backup.
  2. В разделе «Настройки» выберите для файлов и базы данных план Ежедневно.
  3. Перейдите в раздел «Удалённые хранилища» и выберите Google Drive.
  4. Нажмите на ссылку для авторизации доступа к Google Drive и подтвердите разрешения.
  5. Сохраните изменения и выполните тестовый бэкап.

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

Как сделать простое автоматическое резервное копирование через wp-cron с помощью кода

Если вы хотите обойтись без плагинов и реализовать собственное решение, можно использовать встроенный планировщик задач WordPress — wp-cron. Ниже пример функции для создания резервной копии базы данных и сохранения её в папке wp-content/backups.

function wponline_backup_create_db_backup() {
    global $wpdb;
    $backup_dir = WP_CONTENT_DIR . '/backups';
    if ( ! file_exists( $backup_dir ) ) {
        wp_mkdir_p( $backup_dir );
    }

    $filename = 'db-backup-' . date('Y-m-d-H-i-s') . '.sql';
    $filepath = $backup_dir . '/' . $filename;

    $tables = $wpdb->get_results('SHOW TABLES', ARRAY_N);
    $sql = '';

    foreach ( $tables as $table ) {
        $table_name = $table[0];
        $create_table = $wpdb->get_row( "SHOW CREATE TABLE {$table_name}", ARRAY_N );
        $sql .= "\nDROP TABLE IF EXISTS `{$table_name}`;\n";
        $sql .= $create_table[1] . ";\n\n";

        $rows = $wpdb->get_results( "SELECT * FROM {$table_name}", ARRAY_A );
        foreach ( $rows as $row ) {
            $values = array_map( function($value) use ($wpdb) {
                if ($value === null) return 'NULL';
                return "'" . esc_sql($value) . "'";
            }, array_values($row) );
            $sql .= "INSERT INTO `{$table_name}` VALUES (" . implode(',', $values) . ");\n";
        }
        $sql .= "\n";
    }

    file_put_contents( $filepath, $sql );
}

function wponline_backup_schedule_event() {
    if ( ! wp_next_scheduled( 'wponline_backup_daily_event' ) ) {
        wp_schedule_event( time(), 'daily', 'wponline_backup_daily_event' );
    }
}
add_action( 'wp', 'wponline_backup_schedule_event' );
add_action( 'wponline_backup_daily_event', 'wponline_backup_create_db_backup' );

Этот код создает ежедневное событие, которое экспортирует всю базу данных в файл SQL в папку wp-content/backups. Разумеется, для полноценного бэкапа нужны еще файлы сайта, темы, плагины, но это основа для базы.

Резервное копирование файлов сайта: практические советы и примеры

База данных — только часть сайта. Файлы тем, плагинов, медиа и конфигурация тоже важны. Для их автоматизации можно использовать FTP-загрузчики, rsync, или плагины с функцией копирования файлов.

Пример простого PHP-скрипта для копирования папки wp-content/uploads в папку бэкапа:

function wponline_backup_copy_uploads() {
    $source = WP_CONTENT_DIR . '/uploads';
    $destination = WP_CONTENT_DIR . '/backups/uploads_backup_' . date('Y-m-d');

    if ( ! file_exists( $destination ) ) {
        mkdir( $destination, 0755, true );
    }

    $iterator = new RecursiveIteratorIterator(
        new RecursiveDirectoryIterator($source, RecursiveDirectoryIterator::SKIP_DOTS),
        RecursiveIteratorIterator::SELF_FIRST
    );

    foreach ($iterator as $item) {
        $destPath = $destination . DIRECTORY_SEPARATOR . $iterator->getSubPathName();
        if ($item->isDir()) {
            if ( ! file_exists($destPath) ) {
                mkdir($destPath);
            }
        } else {
            copy($item, $destPath);
        }
    }
}

Этот код можно вызывать по расписанию вместе с резервным копированием базы.

Как интегрировать резервные копии с облачными сервисами через плагины WPShop

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

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

Советы по безопасности и хранению резервных копий

При настройке автоматического бэкапа важно:

  • Хранить копии в надежном удалённом месте (облако, отдельный сервер);
  • Ограничивать доступ к папкам с бэкапами, чтобы избежать утечки данных;
  • Регулярно проверять целостность и возможность восстановления из резервных копий;
  • Удалять старые копии, чтобы не занимать много места и не создавать путаницу.

Автоматизация должна включать и управление сроком хранения копий.

Удаление пустых шорткодов в WordPress: практическое руководство
17.02.2026
Как использовать REST API в WordPress для создания уникальных функций
16.11.2025
Как создать настройки плагинов WordPress с использованием Settings API
09.01.2026
WooCommerce: как удалить старые вариации товаров с помощью кода
13.05.2026
Как удалить пустые мета-данные в WordPress: практическое руководство
10.02.2026