Платформы

Как чинить битые ссылки в WordPress

Как найти битые ссылки и изображения на WordPress, настроить 301 после смены человеко-понятных URL (ЧПУ) и не ставить лишние плагины без проверки отрисованной страницы.

WordPress ломает ссылки предсказуемо: сменили человеко-понятные URL (ЧПУ), удалили пост, переименовали файл в медиатеке, конструктор сохранил старый URL в сериализованных данных, плагин «скоро откроемся» отдаёт 200 вместо реальной страницы.

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

Найти

  1. Откройте шаблон, который реально уходит посетителям на боевом сайте: главная, пост, карточка товара. Запустите скан в Chrome. Advanced Broken Links Search читает a[href] и изображения на отрисованной странице, в том числе многие виджеты конструкторов, потому что смотрит DOM, а не только таблицу wp_posts.
  2. Обход сайта, если меню, блог и магазин живут разной жизнью и одной страницы мало.
  3. Сверка с Search Console: что Google уже видел. Подробнее в гиде по 404 в GSC.

Плагины с фоновым обходом по своему представлению о сайте иногда помогают, иногда пропускают то, что видно только в шаблоне. Имеет смысл как второе мнение, а не как единственный источник правды, плюс это ещё одно расширение в админке.

На Тильде, Битриксе и самописном сайте порядок тот же: сначала HTML в браузере, потом правки в админке.

Чинить

  • Контент ещё нужен: верните пост или страницу.
  • Сменили ЧПУ: 301 со старого слага на новый. Yoast, Rank Math или правила на сервере. Проверьте цепочку в режиме инкогнито.
  • Медиа: залить файл снова или пересобрать миниатюры; блок мог остаться на старом CDN. Отдельно про битые изображения.
  • Меню и виджеты: «Внешний вид → Меню» часто хранит старые произвольные ссылки, которые уже не открываются.
  • Сериализованные конструкторы: если search-replace в базе ломает виджет, правьте в интерфейсе конструктора или используйте замену, безопасную для сериализованных данных.

Редиректы

301 на nginx/Apache или в плагине, который не подменяет постоянный редирект временным 302 «на всякий случай». Цепочки вида /old/old-2/new усложняют отчёт и замедляют переход; откуда берутся тикеты про редирект-цепочки.

Не ломать завтра

  • Не меняйте структуру ЧПУ на живом сайте ради эстетики без карты редиректов.
  • Удалили пост: поставьте 301 в тот же день или исключите URL из sitemap.
  • После смены темы просканируйте шапку и подвал: там часто остаются ссылки вроде /old-about.

WordPress не особенный случай. Это CMS, на которой до сих пор стоит большая часть сайтов. Сканируйте HTML. Чините href. Остальное закрывайте редиректом. Другие стеки: Битрикс, Тильда, Shopify, самописный сайт.

Проверьте опубликованную страницу на боевом домене

Откройте страницу так, как её видит пользователь, и просканируйте ссылки и изображения в Chrome. Без аккаунта.

Установить в Chrome

Ещё по теме