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

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

Это особенно заметно на сайтах с большим количеством изображений, каталогами документов, PDF-инструкциями и архивами. Поисковик может индексировать как страницу вложения вида /my-photo/, так и сам файл вида /wp-content/uploads/2026/01/my-photo.jpg. Решение для них отличается.

Что именно нужно закрывать от индексации

В WordPress у медиафайла есть как минимум два разных URL.

  • Страница вложения — отдельная страница записи типа attachment. Она может показывать только сам файл, заголовок и описание.
  • Прямой URL файла — реальный адрес изображения, PDF, ZIP и другого файла в папке uploads.

Если цель — убрать из поиска именно мусорные страницы, достаточно закрыть attachment-страницы. Но если поисковик уже индексирует сами файлы, например PDF-документы или изображения, нужно дополнительно ограничить их доступность для обхода и индексации на уровне robots, мета-тегов или заголовков ответа.

Самый правильный вариант для большинства сайтов: отключить attachment-страницы

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

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

Как сделать редирект через код

Надёжнее всего добавить небольшой код в дочернюю тему или через плагин для вставки сниппетов. Перед изменениями сделайте резервную копию: ошибка в functions.php может временно сломать сайт.

Если нужно перенаправлять attachment-страницы на сам файл, используйте такой код:

add_action('template_redirect', function () {
    if (is_attachment()) {
        $file = wp_get_attachment_url(get_queried_object_id());
        if ($file) {
            wp_redirect($file, 301);
            exit;
        }
    }
});

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

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

Как проверить, что attachment-страницы больше не индексируются

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

Дальше проверьте ответ сервера. Для страницы вложения должен возвращаться 301, а не обычный 200 OK. Это важно: если страница отдаёт 200, поисковик всё ещё может считать её полноценной страницей и держать в индексе.

После этого в Google Search Console можно отправить URL на повторную проверку. Но удаление из индекса не происходит мгновенно: поисковику нужно переобойти старые адреса.

Что делать с самими файлами: изображения, PDF и другие вложения

С прямыми URL файлов ситуация сложнее. WordPress сам по себе не умеет «запретить индексацию всех файлов в uploads» одной галочкой, потому что это уже зона веб-сервера и поисковых роботов. Здесь нужно понимать, какие файлы вы хотите скрыть.

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

Закрыть папку uploads через robots.txt — не всегда достаточно

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

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

Поэтому массово закрывать весь каталог uploads стоит только если вы точно понимаете последствия. Для обычного сайта это часто слишком грубо.

Использовать noindex для файлов, которые отдаются как HTML-страницы

Если PDF или другой файл открывается через страницу-просмотрщик, а не как прямой бинарный файл, можно добавить noindex на уровне заголовков или мета-тегов. Но для обычного файла в uploads это не всегда применимо: браузер скачивает файл напрямую, и HTML-мета-теги там не работают.

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

Ограничить доступ к файлу на уровне сервера

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

Для обычного WordPress-сайта это означает: не рассчитывать, что поисковик «сам поймёт», что файл не нужен. Если URL открыт, его могут проиндексировать. Если файл должен быть скрыт, доступ к нему надо ограничить технически.

Когда достаточно плагина, а когда нужен код

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

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

СитуацияЧто делать
В индексе только attachment-страницыОтключить или редиректить страницы вложений
В индексе прямые URL изображенийПроверить, откуда они доступны, и ограничить их индексацию/доступ
В индексе PDF и документыРешить, должны ли они быть публичными; при необходимости закрыть доступ или убрать из открытой папки
Нужно сохранить файлы доступными, но убрать страницы вложенийСделать 301-редирект с attachment-страниц на файл или родительскую запись

Как понять, что проблема решена

После настройки проверьте три вещи.

  • URL attachment-страниц открываются не как отдельные страницы, а редиректят на нужный адрес.
  • Прямые URL файлов не появляются в поиске по брендовым или файловым запросам.
  • В Search Console старые адреса постепенно исчезают из отчётов после переобхода.

Если в индексе остаются старые URL, это не всегда означает, что настройка не сработала. Поисковик может хранить их некоторое время, особенно если на них есть внешние ссылки или они давно были в sitemap. В таком случае помогает только время плюс корректный 301-редирект или закрытие доступа.

Типичные ошибки, из-за которых файлы продолжают попадать в поиск

Самая частая ошибка — закрыть только attachment-страницы и забыть про сами файлы. Вторая — поставить noindex там, где файл отдаётся не как HTML, а как прямой медиа-URL. Третья — закрыть весь uploads в robots.txt и потом удивляться, что поисковик всё равно помнит старые адреса.

Ещё одна практическая проблема — отсутствие редиректа. Если attachment-страница просто существует, но на ней мало контента, поисковик может продолжать считать её отдельной страницей сайта. Для таких URL редирект обычно надёжнее, чем надежда на то, что робот сам всё поймёт.

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

Как ограничить доступ к wp-admin в WordPress по IP
24.10.2026
Как отключить комментарии в WordPress полностью
31.10.2026
Как отключить REST API в WordPress для гостей
20.10.2026
Как настроить canonical в WordPress вручную
11.10.2026
Как закрыть от индексации страницы поиска WordPress
14.10.2026