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

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

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

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

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

Удаление нужно делать аккуратно, чтобы не повредить структуру сайта и не потерять важные изображения.

Как найти неиспользуемые загрузки вручную

Самый простой способ — проверить, какие медиафайлы не прикреплены к записям и страницам. В WordPress при загрузке файла создаётся связь с постом (attachment post type). Если файл не привязан к записи, возможно, он не используется.

Для просмотра таких файлов можно воспользоваться стандартной библиотекой медиафайлов. Фильтр «Не прикреплённые» покажет файлы без связи с постами.

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

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

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

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

1. Media Cleaner

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

Особенности Media Cleaner:

  • Поддержка стандартных записей, кастомных типов постов и полей.
  • Возможность предварительного просмотра и восстановления файлов.
  • Совместимость с плагинами WooCommerce и Advanced Custom Fields.

Установка и использование просты — после активации запускайте сканирование и удаляйте ненужные файлы.

Скачать можно на официальной странице плагина.

2. WP Web Media Cleaner Pro (на примере плагина из магазина WPSHOP)

Если вы хотите более глубокую интеграцию с вашим сайтом и дополнительный функционал, можно использовать платный плагин Media Cleaner Pro от WPSHOP.

Он умеет:

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

Для сайтов с большой медиатекой этот плагин станет настоящим помощником.

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

Если вы хотите встроить базовую проверку в свой плагин или тему, можно использовать следующий пример кода. Он ищет медиафайлы, не прикреплённые к постам:

function wpweb_get_unused_attachments() {
    $args = array(
        'post_type'      => 'attachment',
        'posts_per_page' => -1,
        'post_status'    => 'inherit',
        'meta_query'     => array(
            array(
                'key'     => '_wp_attachment_context',
                'compare' => 'NOT EXISTS'
            )
        ),
        'post_parent'    => 0
    );

    $unused_attachments = get_posts($args);

    return $unused_attachments;
}

// Пример использования
$unused = wpweb_get_unused_attachments();
foreach ($unused as $attachment) {
    echo 'ID: ' . $attachment->ID . ' - ' . $attachment->post_title . '<br>';
}

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

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

Удаление файлов нужно выполнять в несколько этапов:

  1. Сделайте резервную копию сайта и базы данных.
  2. Проверьте найденные файлы вручную — откройте их, убедитесь, что они не используются в меню, виджетах, коде темы.
  3. Удаляйте через плагин или с помощью кода, вызывая функцию wp_delete_attachment($attachment_id, true), где второй параметр отвечает за физическое удаление файла.

Пример удаления вложения по ID:

function wpweb_delete_unused_attachments() {
    $unused = wpweb_get_unused_attachments();
    foreach ($unused as $attachment) {
        wp_delete_attachment($attachment->ID, true);
    }
}

Запускайте этот код только после тщательной проверки и на тестовом сайте.

Дополнительные советы по оптимизации медиатеки WordPress

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

  • Используйте плагин Clearfy Pro или аналогичные для автоматической очистки базы данных и оптимизации медиа.
  • Ограничьте количество автоматически создаваемых размеров изображений в настройках темы.
  • Удаляйте неиспользуемые изображения сразу после редактирования постов.
  • Используйте CDN и внешние хранилища для крупных файлов.

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

Как удалить записи из категории в WordPress без удаления самих постов
05.03.2026
Как избежать конфликтов между плагинами в WordPress
05.12.2025
Как удалить временные файлы из кеша в WordPress при обновлении сайта
26.03.2026
Как удалить отзывы в WordPress по определённым критериям
15.12.2025
Как создать свой плагин для WordPress с нуля: пошаговое руководство
04.11.2025