Как найти и удалить битые ссылки в WordPress

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

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

Как понять, что ссылка действительно битая

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

Признаки, на которые обычно смотрят:

  • в отчетах Google Search Console или другой системы видны URL со статусом 404;
  • в логах или аналитике есть переходы на несуществующие страницы;
  • пользователи жалуются, что ссылка в статье, меню или кнопке не открывается;
  • при клике по ссылке браузер показывает страницу не найдено.

Если URL открывается с кодом 404, это уже битая ссылка. Если страница открывается, но адрес отличается от ожидаемого, чаще всего нужен не удаление, а редирект или замена ссылки на актуальную.

Где искать битые ссылки в WordPress

Самый удобный путь — собрать их из нескольких источников. Тогда вы не пропустите ссылки, которые не видны на обычных страницах.

1. Отчеты поисковых систем и аналитики

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

2. Проверка сайта сканером ссылок

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

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

3. Логи веб-сервера

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

Как безопасно удалить или заменить битые ссылки

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

Если ссылка ведет на ваш же сайт

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

В WordPress ссылку можно исправить прямо в редакторе записи или страницы. Если адрес встречается в нескольких местах, ищите его в:

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

Если ссылка ведет на внешний сайт

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

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

Если битая ссылка сидит в шаблоне

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

Как найти все вхождения одной ссылки без ручного просмотра сайта

Когда URL встречается много раз, ручной поиск по страницам быстро превращается в рутину. В WordPress удобнее искать по базе данных или использовать инструмент, который умеет находить строку в контенте и настройках.

Практически это выглядит так:

  1. Берете точный старый URL, который нужно убрать или заменить.
  2. Ищете его в записях, страницах, меню и настройках плагинов.
  3. Проверяете, не хранится ли он в виджете, блоке или шаблоне.
  4. Меняете адрес на новый или удаляете ссылку.
  5. После правки повторно запускаете проверку, чтобы убедиться, что вхождений больше нет.

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

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

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

Редирект нужен не всегда. Если страница удалена окончательно и не имеет замены, перенаправление на нерелевантный материал только запутает пользователя и поисковые системы. В таком случае лучше оставить честную 404-страницу без битой ссылки в контенте.

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

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

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

Полезно проверить и кэш: если на сайте стоит плагин кэширования или серверный кэш, после замены ссылки очистите его, иначе старая версия страницы может показываться еще какое-то время.

Что обычно ломает ссылки в WordPress

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

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

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

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

⭐⭐⭐⭐⭐