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

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

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

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

В WordPress у каждого загруженного изображения, PDF или другого файла может быть отдельная страница вложения — attachment page. Это не сам файл, а отдельная запись типа attachment с собственным URL, например /sample-image/ или похожим. На такой странице часто выводится только само изображение, заголовок и ссылка на файл. Для поиска это слабая страница: текста мало, ценности почти нет, а URL может индексироваться как отдельный документ.

Важно не путать три вещи:

  • сам файл — например, изображение в /wp-content/uploads/...;
  • страницу вложения — отдельный URL записи attachment;
  • ссылку на файл в контенте — она может вести прямо на изображение, PDF или другой медиафайл.

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

Самый надёжный вариант: отключить attachment-страницы на уровне WordPress

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

Для этого можно добавить небольшой код в functions.php дочерней темы или, что безопаснее, в небольшой mu-plugin. Перед изменениями сделайте резервную копию: ошибка в 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;
        }
    }
} );

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

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

Как закрыть страницы медиафайлов от индексации через SEO-плагин

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

В большинстве SEO-плагинов есть один из двух вариантов:

  • редирект attachment-страниц на файл или родительскую запись;
  • добавление noindex в мета-тег robots для страниц вложений.

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

Если в вашем плагине есть настройка для медиафайлов, включите именно её. Обычно она находится в разделе, связанном с индексированием, архивами или медиа. После сохранения проверьте исходный код attachment-страницы: в <head> должен появиться noindex, либо страница должна отдавать редирект.

Когда лучше использовать noindex, а когда редирект

СценарийЧто выбратьПочему
Attachment-страницы не нужны вообщеРедирект 301Убирает лишний URL из обхода и не оставляет пустую страницу в индексе
Нужно оставить URL доступным, но не показывать в поискеnoindexСтраница остаётся для прямого доступа, но не должна участвовать в выдаче
Сайт уже давно в индексе, и нужно мягко вывести старые URLСначала noindex, затем при необходимости редиректИногда это удобнее, если вы хотите контролировать переход без резкой смены логики

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

Что не стоит делать

Есть несколько типичных ошибок, из-за которых проблема не решается или решается частично.

  • Закрывать в robots.txt только attachment-URL. Это не убирает уже известные страницы из индекса так надёжно, как редирект или noindex. Кроме того, если страница уже в индексе, запрет в robots.txt может помешать поисковику увидеть мета-тег noindex.
  • Удалять сами файлы из медиа-библиотеки вместо отключения attachment-страниц. Это ломает изображения в контенте и не решает задачу индексации корректно.
  • Ставить noindex на сами файлы, если вам нужны изображения в поиске. Обычно проблема именно в attachment-страницах, а не в медиафайлах как таковых.
  • Путать страницу вложения с вложенным файлом. Это разные сущности, и закрывать нужно именно то, что создаёт дубль.

Как проверить, что страницы вложений действительно закрыты

После настройки не ограничивайтесь визуальной проверкой в админке. Откройте несколько attachment-URL в браузере и проверьте поведение страницы.

Если вы настроили редирект, страница должна отдавать 301 и вести на файл или другую целевую страницу. Если используете noindex, в исходном коде страницы должен быть мета-тег вида <meta name="robots" content="noindex"> или эквивалентная директива, которую добавляет ваш плагин.

Дополнительно можно проверить ответ сервера через инструменты разработчика браузера или через команду curl. Например, для редиректа:

curl -I https://example.com/sample-image/

В ответе вы должны увидеть 301 и заголовок Location с новым адресом. Если вместо этого страница отдаёт 200 OK, значит редирект не сработал и attachment-страница всё ещё открывается как обычная.

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

Если вложения уже попали в поиск

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

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

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

Как создать автоматические бэкапы WordPress: практическое руководство
25.09.2026
Удаление неиспользуемых таблиц в базе данных WordPress: безопасный метод
03.10.2026
Как использовать REST API в WordPress для создания кастомных эндпоинтов
01.10.2026
Как отключить индексацию отдельных страниц WordPress без поломки сайта
22.08.2026
Как отключить и заблокировать регистрацию пользователей в WordPress без плагинов
03.10.2026