Сиротая страница в WordPress — это запись или страница, на которую не ведёт ни одна внутренняя ссылка. Для пользователя она часто выглядит как «забытый» материал, а для сайта — как контент, который плохо участвует в навигации, хуже распределяет вес и нередко выпадает из нормального обхода. Проблема особенно заметна на сайтах с большим архивом: старые статьи остаются в базе, но перестают быть частью структуры.
Удалять такие страницы вслепую не стоит. Сначала нужно понять, действительно ли это мусор, дубликат или просто материал, который ещё можно встроить в структуру сайта. Ниже — рабочий порядок действий: как найти сироты, как проверить их ценность и что делать дальше.
Когда страница считается сиротой и почему это важно
Сиротой обычно называют URL, который не получает внутренних ссылок из других опубликованных материалов. Это не всегда ошибка, но почти всегда сигнал к проверке. Если страница нужна пользователям, её стоит встроить в навигацию, категории, подборки или связанные материалы. Если она устарела и не несёт ценности, её лучше удалить или объединить с более сильной страницей.
На практике сироты появляются после:
- массового переноса контента без пересборки ссылок;
- удаления старых рубрик и тегов;
- публикации материалов «в стол» без последующей перелинковки;
- смены структуры сайта и меню;
- обновления темы, когда блоки связанных записей перестали выводиться.
Диагностика: как найти сиротые страницы в WordPress
Самый надёжный способ — совместить данные из краулера и проверку внутри WordPress. Один только поиск по базе не покажет, какие URL реально доступны из навигации, а один только SEO-сканер не подскажет, что делать с контентом дальше.
1. Проверьте сайт краулером
Если у вас есть Screaming Frog, Sitebulb или аналогичный инструмент, просканируйте сайт и посмотрите отчёт по страницам без внутренних входящих ссылок. Важно смотреть не только на количество ссылок, но и на контекст: иногда страница доступна из меню, но не связана с тематическими материалами, и это тоже слабое место.
Если краулера нет, можно начать с ручной выборки: откройте несколько старых материалов, проверьте, есть ли в них ссылки на нужную страницу, и посмотрите, присутствует ли она в категориях, меню и блоках «похожие записи».
2. Сравните список опубликованных страниц и фактическую перелинковку
Для технической проверки удобно выгрузить список опубликованных страниц и затем пройтись по ним поиском по контенту. Ниже пример простого скрипта для wp eval, который ищет страницы без входящих ссылок внутри контента других записей. Это не полноценный краулер, но для первичной диагностики подходит.
wp eval '
$posts = get_posts([
"post_type" => ["post", "page"],
"post_status" => "publish",
"numberposts" => -1,
"fields" => "ids",
]);
foreach ($posts as $post_id) {
$url = get_permalink($post_id);
$slug = wp_parse_url($url, PHP_URL_PATH);
$linked = false;
$others = get_posts([
"post_type" => ["post", "page"],
"post_status" => "publish",
"numberposts" => -1,
"fields" => "ids",
"post__not_in" => [$post_id],
]);
foreach ($others as $other_id) {
$content = get_post_field("post_content", $other_id);
if ($content && strpos($content, $slug) !== false) {
$linked = true;
break;
}
}
if (! $linked) {
echo $post_id . "\t" . $url . PHP_EOL;
}
}
'Этот вариант грубый: он ищет совпадение по пути URL в контенте. Но для небольшого сайта уже помогает увидеть список кандидатов на проверку. На большом проекте лучше использовать краулер и затем сверять данные вручную.
3. Проверьте, не скрыта ли страница в шаблоне
Иногда страница не сирота по смыслу, а просто ссылки на неё выводятся в шаблоне темы или через плагин, который краулер не видит корректно. Проверьте:
- меню и подменю;
- хлебные крошки;
- блоки «похожие записи»;
- виджеты в сайдбаре и футере;
- шаблоны архивов и карточек записей;
- ссылки в блоках Gutenberg, если контент собран из паттернов.
Пошаговое решение: что делать с найденными страницами
После диагностики у вас обычно остаются три сценария: страницу нужно сохранить, страницу нужно доработать, страницу нужно удалить или объединить. Ошибка многих администраторов в том, что они сразу удаляют всё подряд. Это ломает структуру, а иногда и поисковую индексацию.
Сценарий 1. Страница полезна, но на неё никто не ссылается
В этом случае задача не в удалении, а в интеграции в структуру сайта. Добавьте ссылки из:
- релевантных статей;
- категорийных страниц;
- главного меню или подменю;
- блоков «смотрите также»;
- подвала, если материал справочный и не требует высокой заметности.
Если у вас много похожих материалов, полезно сделать одну опорную страницу и связать с ней остальные. Так внутренний вес распределяется предсказуемее, чем при хаотичной перелинковке.
Сценарий 2. Страница устарела, но на неё есть внешние или внутренние ссылки
Удалять такую страницу напрямую рискованно. Сначала проверьте, есть ли на неё входящие ссылки из других материалов или с внешних сайтов. Если да, лучше настроить редирект на ближайшую релевантную страницу. В WordPress это можно сделать через плагин редиректов или на уровне сервера, если у вас есть доступ к конфигурации.
Пример безопасного варианта через template_redirect для одной конкретной страницы:
add_action('template_redirect', function () {
if (is_page('staryj-material')) {
wp_redirect(home_url('/novyj-material/'), 301);
exit;
}
});Такой код лучше использовать только для точечных случаев и после проверки, что целевой URL действительно заменяет старую страницу по смыслу.
Сценарий 3. Страница не нужна и не имеет ценности
Если материал пустой, дублирует другой контент или был создан ошибочно, его можно удалить. Но перед удалением проверьте:
- есть ли у страницы входящие ссылки;
- не используется ли она в меню или виджетах;
- не участвует ли она в шаблонах или блоках;
- не нужна ли она как источник для редиректа.
После удаления обязательно уберите ссылки на неё из контента и навигации, иначе получите цепочку 404.
Как проверить, что решение сработало
После правок не ограничивайтесь просмотром страницы в браузере. Проверьте результат по нескольким признакам:
- страница появилась в списке внутренних ссылок, если вы её сохранили;
- старый URL отдаёт 301, если вы делали редирект;
- в меню и контенте не осталось битых ссылок;
- краулер больше не показывает страницу как сироту, если вы её встроили в структуру;
- в отчёте по 404 нет новых ошибок после удаления.
Для быстрой проверки редиректа можно использовать curl:
curl -I https://example.com/staryj-material/В ответе должен быть статус 301 и заголовок Location с новым адресом. Если вместо этого вы видите 200 или цепочку редиректов, значит настройка сделана не до конца.
Сравнение подходов: плагин, код или ручная правка
| Подход | Когда подходит | Плюсы | Минусы |
|---|---|---|---|
| Плагин редиректов | Когда нужно быстро закрыть старые URL | Просто настраивать, удобно для редактора | Лишняя зависимость, нужен контроль правил |
| Код в теме или mu-plugin | Для точечных и предсказуемых сценариев | Минимум лишнего, всё под контролем | Нужна аккуратность и тестирование |
| Ручная правка контента | Когда страница должна остаться в структуре | Улучшает перелинковку и навигацию | Требует времени и ревизии материалов |
Частые ошибки и как их исправить
Удаляют страницу без проверки входящих ссылок
Это самая частая ошибка. В результате старые ссылки из статей и меню начинают вести в 404. Исправление простое: сначала ищите все упоминания URL, потом удаляйте.
Ставят редирект на нерелевантную страницу
Если старый материал про техническую настройку, а редирект ведёт на главную, пользователь теряет контекст, а поисковая система видит слабую замену. Лучше направлять на ближайший по смыслу материал или категорию.
Путают сироты с дублями
Это разные проблемы. Дубль — это несколько URL с одинаковым или почти одинаковым содержанием. Сирота — это страница без внутренних ссылок. Лечатся они по-разному: дубль обычно объединяют или канонизируют, сироту — встраивают в структуру или удаляют.
Не проверяют шаблоны и блоки
Иногда ссылка есть в шаблоне, но не в тексте записи. После смены темы такой блок исчезает, и страница внезапно становится сиротой. Поэтому после обновления темы или конструктора всегда делайте повторный аудит перелинковки.
Практические советы по безопасности и производительности
Если вы массово правите ссылки и редиректы, делайте это на staging-копии или хотя бы перед изменениями снимайте бэкап базы. Для больших сайтов полезно вести список перенаправлений отдельно, чтобы не потерять логику после следующего редизайна.
Не ставьте десятки правил редиректа в .htaccess без необходимости: при ошибке в синтаксисе можно положить сайт. Для сложных наборов правил удобнее использовать серверную конфигурацию, плагин редиректов или небольшой mu-plugin с точечными проверками.
Если задача повторяется регулярно, имеет смысл пересмотреть структуру контента: добавить блоки связанных материалов, пересобрать категории и убрать страницы, которые не участвуют в навигации. В проектах, где много технических дублей и мусорных URL, иногда помогает связка с инструментами чистки и SEO-оптимизации вроде Clearfy Pro, но только как часть общей ревизии, а не вместо неё.
Главный критерий простой: после правок важные страницы должны быть доступны из структуры сайта, а удалённые URL — корректно закрыты редиректом или кодом ответа. Если это соблюдено, сироты перестают быть скрытой проблемой и не разрушают архитектуру сайта.