Как закрыть внешние ссылки от индексации на wordpress

Как закрыть внешние ссылки от индексации на wordpress

Внешние ссылки на сайте WordPress передают вес сторонним ресурсам и могут негативно влиять на SEO, если не контролировать их индексирование. Закрытие таких ссылок от поисковых роботов – необходимый шаг для сохранения ценности внутренних страниц и предотвращения утечки краевого веса.

WordPress по умолчанию не блокирует внешние ссылки от индексации. Для этого необходимо вручную добавлять атрибут rel=»nofollow» к каждой ссылке или использовать специализированные плагины. Например, External Links – nofollow, noopener & new window автоматически добавляет нужные атрибуты ко всем внешним ссылкам и позволяет гибко настраивать исключения.

Другой подход – обертывание ссылок в редирект через внутренний URL. Это реализуется плагинами вроде Pretty Links или через собственный PHP-скрипт, где внешняя ссылка прячется за внутренней, не передавая SEO-ценности напрямую.

Не забывайте использовать директивы в файле robots.txt и мета-теги <meta name=»robots» content=»noindex, follow»> на страницах, содержащих массовые внешние ссылки, если их нельзя исключить другим способом. Такой подход помогает избежать попадания в индекс нежелательного контента и сохранить приоритеты индексации для нужных страниц.

Добавление атрибута rel=»nofollow» вручную в редакторе WordPress

Добавление атрибута rel=

Откройте запись или страницу в режиме редактирования. Переключитесь на вкладку «Текст» (в классическом редакторе) или выберите блок «Параграф» и нажмите на кнопку «Код» (в редакторе Gutenberg).

Найдите HTML-код ссылки, которую требуется закрыть от индексации. Пример стандартной ссылки:

<a href="https://example.com">Переход</a>

Измените её, добавив атрибут rel="nofollow" следующим образом:

<a href="https://example.com" rel="nofollow">Переход</a>

Если у ссылки уже присутствует атрибут rel, добавьте nofollow через пробел, не удаляя существующие значения:

<a href="https://example.com" rel="noopener noreferrer nofollow">Переход</a>

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

Автоматическое закрытие внешних ссылок с помощью плагина

Автоматическое закрытие внешних ссылок с помощью плагина

Для автоматического добавления атрибутов rel="nofollow" ко всем внешним ссылкам в WordPress можно использовать плагин External Links – nofollow, noopener & new window. Плагин работает без изменения исходного контента и не требует ручной настройки каждой ссылки.

  • После установки перейдите в раздел Настройки → External Links.
  • Включите опцию Add rel="nofollow" to external links.
  • Активируйте добавление noopener и noreferrer для повышения безопасности.
  • При необходимости установите открытие внешних ссылок в новой вкладке – Open in new window/tab.

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

Альтернативные плагины с аналогичной функциональностью: WP External Links, Ultimate Nofollow. Перед активацией убедитесь, что в системе не используется другой плагин с похожими функциями, чтобы избежать конфликта правил обработки ссылок.

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

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

Для автоматического добавления атрибута rel="nofollow" к внешним ссылкам в контенте WordPress используется фильтр the_content. Это позволяет централизованно обрабатывать все публикации без ручного редактирования.

Пример кода для файла functions.php вашей темы:

add_filter('the_content', 'modify_external_links');
function modify_external_links($content) {
return preg_replace_callback('#<a[^>]+href=["\'](https?://[^"\']+)["\'][^>]*>#i', function($matches) {
$host = parse_url(home_url(), PHP_URL_HOST);
$link_host = parse_url($matches[1], PHP_URL_HOST);
if ($host && $link_host && $host !== $link_host) {
if (strpos($matches[0], 'rel=') === false) {
return str_replace('<a', '<a rel="nofollow noopener"', $matches[0]);
}
}
return $matches[0];
}, $content);
}

Этот код проверяет каждую ссылку в контенте: если домен отличается от текущего сайта, добавляется атрибут rel. Внутренние ссылки остаются без изменений.

Для исключения определённых доменов из обработки добавьте проверку в условие:

$excluded = ['trusted-site.com', 'partner.net'];
if (in_array($link_host, $excluded)) {
return $matches[0];
}

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

Настройка nofollow через функции темы в файле functions.php

Настройка nofollow через функции темы в файле functions.php

Для автоматического добавления атрибута rel=»nofollow» ко всем внешним ссылкам на сайте WordPress, можно использовать хук the_content в файле functions.php активной темы. Ниже представлен оптимизированный пример функции:


function add_nofollow_to_external_links($content) {
$content = preg_replace_callback('#<a[^>]+href=["\'](http[s]?:\/\/[^"\']+)["\'][^>]*>#i', function ($matches) {
$site_url = get_site_url();
if (strpos($matches[1], $site_url) === false) {
$tag = $matches[0];
if (strpos($tag, 'rel=') === false) {
$tag = str_replace('>', ' rel="nofollow">', $tag);
} elseif (strpos($tag, 'nofollow') === false) {
$tag = preg_replace('/rel=["\'](.*?)["\']/', 'rel="$1 nofollow"', $tag);
}
return $tag;
}
return $matches[0];
}, $content);
return $content;
}
add_filter('the_content', 'add_nofollow_to_external_links');

Функция анализирует каждую ссылку в содержимом поста. Если ссылка ведёт на внешний ресурс, к ней добавляется rel=»nofollow», если атрибут rel отсутствует, либо дописывается nofollow к уже существующим значениям.

Рекомендуется использовать preg_replace_callback вместо preg_replace для точечной обработки и избежания ошибок при сложной структуре ссылок.

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

Исключение внешних ссылок из индексации с помощью robots.txt

Исключение внешних ссылок из индексации с помощью robots.txt

Файл robots.txt предназначен для управления индексацией контента поисковыми роботами, но он не позволяет напрямую запрещать индексацию внешних ссылок, так как не контролирует сторонние ресурсы. Однако можно использовать его для ограничения обхода ссылок, размещённых в определённых разделах сайта.

Если внешние ссылки размещаются, например, в пользовательских комментариях или на определённых страницах, можно закрыть эти разделы от сканирования. Пример:

User-agent: *
Disallow: /comments/
Disallow: /partners/

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

Для большей надёжности используйте атрибут rel=»nofollow» на внешних ссылках и сочетайте его с закрытием разделов в robots.txt. Это минимизирует вероятность передачи веса и попадания таких ссылок в индекс.

Для большей надёжности используйте атрибут undefinedrel= на внешних ссылках и сочетайте его с закрытием разделов в robots.txt. Это минимизирует вероятность передачи веса и попадания таких ссылок в индекс.»>

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

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

После внедрения атрибутов rel=»nofollow» или rel=»noopener noreferrer» важно подтвердить их корректное применение на внешних ссылках. Google Search Console предоставляет функцию «Проверка URL», где можно просмотреть, как поисковый робот видит конкретную страницу, включая атрибуты ссылок. Отсутствие необходимых rel-атрибутов у внешних ссылок сигнализирует о неправильной настройке.

Для массовой проверки применяйте инструмент «Сканирование» (Crawl) в Google Search Console или Яндекс.Вебмастер, экспортируя список внешних ссылок. Затем с помощью текстового редактора или специализированных парсеров выявляйте ссылки без rel-атрибутов nofollow. Это позволяет оперативно исправить ошибки на нескольких страницах.

Важно: проверяйте не только атрибуты rel, но и корректность открытия ссылок в новых вкладках через target=»_blank», чтобы предотвратить утечки реферера и улучшить безопасность.

Дополнительно можно использовать сторонние сервисы для анализа исходного кода страниц с фильтрацией по внешним ссылкам и их атрибутам. Результаты следует сверять с отчетами вебмастеров для комплексной оценки.

Вопрос-ответ:

Почему стоит закрывать внешние ссылки от индексации в WordPress?

Закрывать внешние ссылки от индексации полезно, чтобы избежать передачи «веса» сайта на другие ресурсы. Это помогает сохранить SEO-показатели и удержать внимание поисковых систем на своих страницах. Кроме того, это снижает риск негативного влияния на репутацию сайта, если внешние страницы имеют низкое качество или могут быть заблокированы поисковыми системами.

Какие способы есть для закрытия внешних ссылок от индексации в WordPress?

В WordPress можно использовать несколько методов. Один из самых простых — добавление атрибута rel=»nofollow» к внешним ссылкам вручную или с помощью специальных плагинов, например, Yoast SEO или WP External Links. Также можно внести изменения в файл functions.php, чтобы автоматически добавлять нужный атрибут ко всем внешним ссылкам. Такой подход помогает быстро настроить нужный режим для всех ссылок, не затрачивая много времени.

Влияет ли закрытие внешних ссылок от индексации на поведение пользователей?

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

Какие риски существуют, если не закрывать внешние ссылки от индексации?

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

Ссылка на основную публикацию