Как удалить неиспользуемые изображения в WordPress и освободить место

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

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

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

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

Многие редакторы и пользователи загружают изображения, которые потом не вставляют в записи или страницы, либо изображения остаются от удалённых материалов. Такие медиафайлы называются неиспользуемыми.

Поиск неиспользуемых изображений с помощью плагинов

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

1. Media Cleaner

Media Cleaner — мощный и удобный плагин для очистки медиа-библиотеки от неиспользуемых файлов. Он сканирует базу данных и файлы, анализирует использованные URL и связи с контентом.

Преимущества:

  • Поддержка стандартных записей, страниц, WooCommerce, плагинов;
  • Возможность предварительного просмотра и восстановления удалённых файлов;
  • Совместимость с WPML и другими мультисайтами;
  • Простой интерфейс с фильтрами и сортировкой.

Недостатки — бесплатная версия ограничена по функционалу, для глубокого сканирования некоторых плагинов нужна PRO версия.

2. DNUI (Delete Not Used Image)

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

Минусы — не проверяет использование в кастомных полях и некоторых плагинах.

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

Если вы хотите автоматизировать проверку и интегрировать её в собственный функционал, можно написать пользовательскую функцию. Ниже пример функции wpbook_find_unused_images(), которая ищет изображения из медиа-библиотеки, не вставленные в контент записей и страниц.

function wpbook_find_unused_images() {
    global $wpdb;
    // Получаем все изображения из медиа
    $attachments = $wpdb->get_results("SELECT ID, post_title FROM {$wpdb->posts} WHERE post_type = 'attachment' AND post_mime_type LIKE 'image/%'");
    $unused = [];

    foreach ($attachments as $attachment) {
        $id = $attachment->ID;
        $url = wp_get_attachment_url($id);

        // Проверяем, используется ли URL в контенте постов
        $count = $wpdb->get_var($wpdb->prepare(
            "SELECT COUNT(*) FROM {$wpdb->posts} WHERE post_content LIKE %s",
            '%' . $wpdb->esc_like($url) . '%'
        ));

        if ($count == 0) {
            $unused[] = [
                'ID' => $id,
                'title' => $attachment->post_title,
                'url' => $url
            ];
        }
    }

    return $unused;
}

Этот код можно вызвать, например, в консоли администратора или через AJAX для вывода списка неиспользуемых изображений. Далее их можно удалить программно через wp_delete_attachment($id, true).

Как безопасно удалить неиспользуемые изображения

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

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

Если удалять вручную через пользовательский скрипт, используйте функцию с параметром $force_delete = true для полного удаления:

foreach ($unused_images as $img) {
    wp_delete_attachment($img['ID'], true); // true - удаляет физический файл
}

Дополнительные советы по работе с медиа в WordPress

Оптимизация изображений

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

Использование CDN

Для ускорения загрузки медиа рекомендуем подключать CDN (Content Delivery Network), например, Cloudflare или BunnyCDN. Они кэшируют изображения и уменьшают нагрузку на основной сервер.

Стандартизация и организация медиафайлов

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

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

⭐⭐⭐⭐⭐
Как автоматически удалять товар из WooCommerce после первого заказа
06.05.2026
Как удалить неиспользуемые шорткоды в WordPress: эффективные методы и примеры кода
18.02.2026
Как создать пользовательские типы записей (CPT) в WordPress с примером кода
22.03.2026
Как использовать WP-Cron для автоматизации задач в WordPress
18.11.2025
Как создать уникальный фильтрованный запрос в WordPress с помощью WP_Query
14.12.2025
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее