WPFAQ

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

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

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

Что такое страница вложения и почему она мешает

Когда вы загружаете картинку в медиатеку, WordPress сохраняет сам файл и, при определённых условиях, создаёт отдельную запись типа attachment. У неё есть собственный адрес на сайте, например страница вида /image-name/ или /attachment/image-name/ в зависимости от структуры постоянных ссылок и темы.

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

  • создавать дубли и размывать релевантность;
  • отнимать краулинговый бюджет на больших сайтах;
  • попадать в индекс вместо полезных страниц;
  • портить отчёты в Search Console и аналитике.

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

Самый надёжный вариант: перенаправить страницы вложений

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

В WordPress это можно сделать плагином или кодом. Для большинства сайтов удобнее плагин, потому что он не требует правки темы и не сломается при обновлении. Если же вы предпочитаете код, его можно добавить в functions.php дочерней темы или в собственный мини-плагин.

Редирект через код

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

add_action( 'template_redirect', function () {
    if ( is_attachment() ) {
        $parent = wp_get_post_parent_id( get_the_ID() );

        if ( $parent ) {
            wp_redirect( get_permalink( $parent ), 301 );
            exit;
        }

        wp_redirect( home_url( '/' ), 301 );
        exit;
    }
} );

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

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

Редирект через плагин

Если вы не хотите трогать код, используйте SEO-плагин или плагин для редиректов, который умеет перехватывать attachment pages. Важно проверить, что редирект именно 301, а не временный 302. Для поисковика это принципиально: 301 сообщает, что страница переехала надолго.

После настройки откройте несколько старых URL вложений в браузере и убедитесь, что они сразу перекидывают на нужный адрес без цепочки редиректов.

Как отключить страницы вложений для новых изображений

Если проблема только начинается, можно сразу настроить сайт так, чтобы новые вложения не создавали SEO-проблему. Сам WordPress не даёт удобной встроенной кнопки «отключить attachment pages» для всех сценариев, поэтому на практике используют один из двух подходов:

  • редиректить все attachment URL;
  • закрывать их от индексации и одновременно не оставлять их как полезные страницы.

Первый вариант надёжнее. Второй имеет смысл только как дополнительная мера, если по каким-то причинам редирект пока нельзя включить.

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

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

  1. включите 301-редирект со всех attachment pages;
  2. проверьте, что в sitemap они не попадают;
  3. убедитесь, что внутренние ссылки на такие страницы не используются;
  4. при необходимости отправьте удалённые URL на переобход через Search Console.

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

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

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

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

Если вы используете SEO-плагин, проверьте, есть ли в нём настройка для attachment pages. В некоторых случаях можно задать для типа вложений noindex или отключить их архивы. После этого обязательно проверьте исходный код страницы и убедитесь, что там действительно появился метатег robots с noindex.

Как проверить, что всё работает

После настройки не ограничивайтесь визуальной проверкой в браузере. Для attachment pages важно проверить три вещи: редирект, индексируемость и отсутствие внутренних ссылок.

Самый простой тест:

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

Для более точной проверки можно использовать инструменты разработчика в браузере или любой HTTP-проверщик, который показывает код ответа и цепочку перенаправлений. Если на сайте есть доступ к командной строке, можно проверить заголовки через curl -I https://example.com/attachment-url/, но это уже необязательно для обычной настройки.

Когда страницы вложений лучше оставить

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

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

Если вам нужен более системный способ чистить WordPress от дублей и лишних SEO-страниц, можно посмотреть Clearfy Pro: https://wpshop.ru/plugins/clearfy. Но для самой задачи достаточно и обычного редиректа или настройки noindex.

×
Дай суперсилу своему сайту!

WordPress

-20% на топовые темы и плагины

Создай сайт своей мечты ⋙