Как автоматически удалять старые медиафайлы в WordPress

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

Почему важно удалять старые и неиспользуемые медиафайлы

Каждый загруженный файл в WordPress сохраняется в базе данных и на сервере. Если вы часто обновляете контент, удаляете посты или меняете изображения, старые медиа остаются и занимают место. Это приводит к:

  • Переполнению дискового пространства хостинга.
  • Замедлению резервного копирования сайта.
  • Усложнению поиска нужных файлов в библиотеке.

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

Как найти неиспользуемые медиафайлы в WordPress

Для начала нужно определить, какие медиафайлы не используются на сайте. Ручной поиск очень трудоемок, поэтому рекомендуются специальные инструменты и плагины.

Плагины для поиска и удаления неиспользуемых медиа

Вот несколько популярных плагинов, которые помогут решить задачу:

  • Media Cleaner — сканирует библиотеку и контент, выявляя неиспользуемые файлы. Позволяет безопасно удалять их.
  • DNUI (Delete Not Used Image) — бесплатный плагин, ищет неиспользуемые изображения и предлагает их удаление.
  • WP-Optimize — комплексный плагин для оптимизации базы и файлов, включая очистку медиа.

Важно делать резервные копии перед массовым удалением.

Автоматизация удаления старых медиафайлов с помощью кода

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

Пример функции, которая удаляет медиафайлы без связей с постами старше 90 дней:

function wpbloger_auto_delete_old_unused_media() {
    $days_limit = 90;
    $args = [
        'post_type'      => 'attachment',
        'post_status'    => 'inherit',
        'posts_per_page' => -1,
        'date_query'     => [
            [
                'column' => 'post_date',
                'before' => "$days_limit days ago",
            ],
        ],
        'meta_query' => [
            [
                'key'     => '_wp_attachment_metadata',
                'compare' => 'EXISTS',
            ],
        ],
    ];
    $attachments = get_posts($args);

    foreach ($attachments as $attachment) {
        $attached_id = $attachment->post_parent;
        if ($attached_id === 0) {
            wp_delete_attachment($attachment->ID, true);
        }
    }
}

// Запускаем крон-задачу раз в неделю
if (!wp_next_scheduled('wpbloger_weekly_media_cleanup')) {
    wp_schedule_event(time(), 'weekly', 'wpbloger_weekly_media_cleanup');
}
add_action('wpbloger_weekly_media_cleanup', 'wpbloger_auto_delete_old_unused_media');

В этом коде мы:

  • Получаем вложения (медиафайлы), опубликованные более 90 дней назад.
  • Проверяем, прикреплены ли они к каким-либо постам (родительский ID равен 0 означает отсутствие связи).
  • Удаляем такие файлы полностью с помощью wp_delete_attachment.
  • Настраиваем запуск функции раз в неделю через WP-Cron.

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

Учет возможных рисков и рекомендации

Перед автоматическим удалением медиа важно учитывать несколько моментов:

  • Резервное копирование. Обязательно делайте бэкап базы и файлов, чтобы избежать потери нужных данных.
  • Проверка связей. Медиа могут использоваться не только в постах, но и в виджетах, настройках темы, плагинах. Поэтому стоит дополнительно проверять использование.
  • Использование плагинов. Если вы не уверены в безопасности собственного кода, лучше использовать проверенные плагины с функцией предварительного просмотра перед удалением.

Интеграция с плагином Clearfy Pro для оптимизации медиа

Плагин Clearfy Pro предлагает удобные инструменты для оптимизации WordPress, включая очистку неиспользуемых медиафайлов. С его помощью вы можете:

  • Автоматически находить и удалять неиспользуемые изображения.
  • Оптимизировать базу данных и уменьшить размер медиа.
  • Настроить расписание очистки и получать отчеты.

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

Заключение

Автоматическое удаление старых и неиспользуемых медиафайлов помогает поддерживать чистоту и скорость сайта на WordPress. Используйте сочетание плагинов и кастомных решений для надежного результата. Не забывайте про резервные копии и тестирование на тестовом сервере.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как массово изменить автора постов в WordPress: практическое руководство
11.02.2026
Как создать автоматический импорт постов из RSS в WordPress
20.02.2026
Как автоматически удалять старые медиафайлы в WordPress: практическое руководство
11.04.2026
Как решить проблему нерабочих AJAX-запросов в WooCommerce: практическое руководство
22.06.2026
Как быстро удалить старые вариации продуктов в WooCommerce без плагинов
13.06.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше