Как найти и убрать дубли изображений в WordPress без потери SEO

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

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

Как выглядит проблема на практике

Типичный сценарий: в поиске находятся страницы вида /attachment/..., а рядом — прямые ссылки на изображения из /wp-content/uploads/. Иногда дубли создают плагины галерей, которые генерируют отдельные страницы под каждое изображение. Ещё один частый случай — когда изображение используется как featured image, но его вложение тоже открыто для индексации и конкурирует с основной страницей.

Что именно считать дублем

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

  • страницы вложений WordPress с пустым или слабым контентом;
  • прямые URL к файлам в /uploads/, если они попадают в индекс;
  • архивы медиафайлов, если тема или плагин их создаёт;
  • дубли через разные размеры одного изображения, когда они доступны как отдельные страницы;
  • страницы с одинаковыми title/description у вложений.

Диагностика: где искать дубли изображений

Начните не с правок, а с проверки того, что уже проиндексировано. Вручную это делается через поиск по сайту и проверку URL в Google Search Console. Если у вас есть доступ к консоли, посмотрите отчёты по страницам и исключённым URL: часто там видно, что именно поисковик считает отдельной страницей.

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

Быстрая проверка через поиск

Используйте запросы вида site:example.com inurl:attachment и site:example.com inurl:uploads. Это не даёт полной картины, но быстро показывает, есть ли у сайта лишние медиа-страницы в индексе. Для более точной проверки удобно выгрузить список URL из Search Console и отфильтровать медиа-страницы отдельно.

Что делать: рабочая схема без потери нужных изображений

Задача не в том, чтобы удалить все изображения из индекса. Нужно убрать только те URL, которые не должны конкурировать с основными страницами. На практике есть три рабочих подхода: редирект вложений на файл или родительскую запись, закрытие страниц вложений от индексации и отключение архивов медиа, если они не нужны.

ПодходКогда подходитМинус
Редирект вложенийЕсли страницы attachment не нужны вообщеНужно аккуратно проверить, чтобы не сломать старые ссылки
noindex для медиа-страницЕсли вложения должны открываться, но не индексироватьсяURL остаётся доступным для обхода
Отключение архивов медиаЕсли тема или плагин создают отдельные архивы изображенийНе всегда решает проблему с уже проиндексированными URL

Вариант 1: редирект страниц вложений на родительскую запись

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

<?php
add_action('template_redirect', function () {
    if (!is_attachment()) {
        return;
    }

    $post = get_post();
    if (!$post) {
        return;
    }

    $parent_id = (int) $post->post_parent;

    if ($parent_id) {
        wp_safe_redirect(get_permalink($parent_id), 301);
        exit;
    }

    $file_url = wp_get_attachment_url($post->ID);
    if ($file_url) {
        wp_safe_redirect($file_url, 301);
        exit;
    }
});

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

Вариант 2: закрыть вложения от индексации

Если вам нужно оставить страницу вложения доступной, но не отдавать её в индекс, добавьте noindex. Это полезно для сайтов, где медиа-страницы технически нужны, но не должны конкурировать с основным контентом. В WordPress это можно сделать через фильтр wp_robots.

<?php
add_filter('wp_robots', function (array $robots) {
    if (is_attachment()) {
        $robots['noindex'] = true;
        $robots['follow'] = true;
    }

    return $robots;
});

Такой подход не удаляет URL, но снижает риск того, что поисковик будет считать вложение самостоятельной страницей. Если у вас уже есть проиндексированные attachment-URL, эффект будет не мгновенным: поисковику нужно переобойти страницы и обновить сигнал.

Вариант 3: отключить архивы медиа, если их создаёт тема или плагин

Некоторые темы и SEO-плагины добавляют отдельные архивы изображений или нестандартные шаблоны для медиа. Если эти страницы не несут пользы, их лучше отключить на уровне настроек плагина или темы. Здесь важно не путать архивы медиа с обычными страницами вложений: это разные сущности, и закрывать нужно именно то, что реально создаёт дубли.

Пошаговое решение для сайта на WordPress

  1. Проверьте, какие медиа-URL уже есть в индексе через Search Console и поиск site:.
  2. Определите, нужны ли вам страницы вложений как отдельные страницы.
  3. Если не нужны — настройте 301-редирект с attachment на родительскую запись или файл.
  4. Если нужны — добавьте noindex для вложений.
  5. Проверьте, не создаёт ли тема отдельные архивы медиа или дубли title/description.
  6. После изменений отправьте важные URL на переобход в Search Console.

Проверка результата после внедрения

После правок не ограничивайтесь визуальной проверкой. Откройте несколько страниц вложений напрямую: они должны либо редиректить, либо отдавать noindex в HTML. Если вы ставили редирект, убедитесь, что код ответа именно 301, а не 302.

Дальше проверьте исходный код страницы и заголовок ответа сервера. Для attachment-страницы в HTML должен появиться мета-robots или HTTP-эквивалент, если вы используете соответствующий подход. Для редиректа — страница не должна открываться как полноценный контент.

Что смотреть в Search Console

  • уменьшилось ли число проиндексированных медиа-URL;
  • исчезли ли страницы вложений из отчёта по индексированию;
  • нет ли ошибок обхода после редиректов;
  • не появились ли новые дубли title и description у медиа-страниц.

Частые ошибки и как их исправить

Редирект всех вложений без проверки родителя

Если у вложения нет post_parent, редирект на несуществующую страницу или на главную создаст лишние цепочки и может сломать старые ссылки. Решение простое: сначала проверяйте родителя, потом файл, и только потом выбирайте целевой URL.

Закрыли изображения в robots.txt вместо страниц вложений

Это частая путаница. Запрет на обход файлов изображений в robots.txt не решает проблему дублей страниц вложений. Поисковик может всё равно видеть URL страниц, а сами картинки перестанут нормально индексироваться там, где это нужно. Обычно лучше управлять именно страницами вложений, а не файлами.

Поставили noindex, но оставили пустые title

Даже если страница не индексируется, она может продолжать создавать мусор в обходе и отчётах. Если attachment-страницы остаются доступными, проверьте их шаблон: у них не должно быть бессмысленных заголовков и повторяющихся description.

Сломали галереи и lightbox

Иногда тема или плагин рассчитывают, что attachment-страница откроется после клика по изображению. После редиректа поведение меняется. Если у вас есть галереи, сначала протестируйте их на staging-копии сайта и только потом переносите правку в продакшн.

Безопасность и производительность: что учесть заранее

Любые правки, связанные с редиректами и мета-роботами, лучше делать в дочерней теме или через небольшой mu-plugin, а не в файле основной темы. Так вы не потеряете изменения после обновления. Перед внедрением сохраните резервную копию и проверьте, как сайт ведёт себя на страницах с большим количеством изображений.

Если у вас много медиа и старых публикаций, не запускайте массовую чистку без теста. Сначала проверьте один тип URL, потом второй. И обязательно следите за цепочками редиректов: лишние переходы ухудшают и скорость, и качество обхода.

Если нужен более широкий контроль дублей, мета-данных и технической чистки сайта, можно посмотреть в сторону Clearfy Pro. Но даже с плагином полезно понимать, какие именно URL вы закрываете и почему: автоматические настройки не заменяют диагностику.

Мини-чек-лист перед публикацией изменений

  • проверены ли attachment-страницы в индексе;
  • понятно ли, нужны ли они как отдельные страницы;
  • настроен ли 301-редирект или noindex только для нужного типа URL;
  • нет ли цепочек редиректов;
  • не ломаются ли галереи, слайдеры и lightbox;
  • проверен ли исходный код после правок;
  • отправлены ли важные URL на переобход в Search Console.

Если после внедрения в индексе всё ещё остаются старые медиа-страницы, это не всегда ошибка. Поисковику нужно время, чтобы переоценить URL. Но если новые дубли продолжают появляться, значит источник не закрыт: чаще всего это тема, галерейный плагин или шаблон вложений, который снова генерирует отдельные страницы.

Как настроить отключение автоматических обновлений в WordPress
30.09.2026
Как убрать дубли страниц пагинации и фильтров в WordPress
02.09.2026
Как создать автоматические редиректы в WordPress без плагинов
25.09.2026
Как найти и убрать дубли архивных страниц в WordPress
23.08.2026
Как закрыть архивы категорий WordPress от индексации и убрать дубли страниц
03.10.2026