Как правильно убрать / с URL в WordPress и не потерять SEO
Когда я только запускал блог, в структуре постоянных ссылок для записей стоял суффикс /
. На тот момент это было распространено: мы как бы «подсказывали» поисковикам, что страница статическая. Сейчас это неактуально: чистые адреса со слэшем (/stattya/
) выглядят короче, понятнее и лучше масштабируются технически. В этой статье разберём, как безопасно перейти с /page/
на /page/
, сохранив позиции и трафик.
Коротко: что именно делаем
- Фиксируем единый стандарт адресов: рекомендую со слэшем (
/post/
). - Делаем 1:1-маппинг всех старых URL → новых.
- Настраиваем 301-редиректы без цепочек.
- Обновляем внутренние ссылки, canonical, hreflang, sitemap, JSON-LD.
- Переиндексируем ключевые страницы в Google Search Console и мониторим 404/переходы в течение 4–6 недель.
Почему стоит убрать /
Плюсы | Пояснение |
---|---|
Более короткие, «чистые» URL | Выше CTR, лучшее восприятие, легче читать и делиться. |
Технологическая гибкость | Адрес не «зашивает» стек. Пусть сегодня WP, завтра headless — URL остаются стабильными. |
Каноникализация | Единая форма адресов со слэшем снижает риски дублей. |
Проще локализация | Структуры вида /ru/blog/seo/ очевидны и масштабируемы. |
Важно: сам по себе суффикс /
не вредит SEO. Проблемы появляются из-за дублей, цепочек редиректов и смешанных форм URL.
Риски миграции
- Временная «турбулентность» в выдаче, если делать без плана.
- Потеря части веса при 302 вместо 301, при цепочках или пропущенных страницах.
- Сломанные внутренние ссылки, если не обновить меню/виджеты/сниппеты.
Подготовка: чек-лист перед стартом
- Сделайте полный бэкап файлов и БД. Желательно тест на staging.
- Сохраните полный список URL (скринер или sitemap) и составьте 1:1-маппинг
*/ → */
. - Определите единый стандарт: рекомендую всегда со слэшем (
/services/
). - Убедитесь, что canonical и hreflang генерируются для новых адресов.
Шаг 1. Включите «чистую» структуру ссылок в WordPress
Перейдите: Настройки → Постоянные ссылки и выберите Название записи. Если раньше стояло /%postname%/
, смените на /%postname%/
.
Шаг 2. 301-редиректы без цепочек
Настройте редиректы так, чтобы /page/
сразу вёл на /page/
(одним «хопом»), и сохраняйте параметры запроса.
Apache (.htaccess)
# Включить механизм
RewriteEngine On
# 1) /page/ -> /page/
RewriteCond %{REQUEST_URI} \/$
RewriteRule ^(.+)\/$ /$1/ [R=301,L]
# 2) Добавить конечный слэш для всех (кроме файлов/папок)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+[^/])$ /$1/ [R=301,L]
# 3) (Опционально) Исключения для admin, feed, sitemap и т.п.
RewriteRule ^(wp-admin|wp-json|feed|sitemap_index\.xml) — [L]
Nginx (server-блок)
Если у вас виртуальный хостинг на Apache, не заморачивайтесь и пропустите этот пункт
# /page/ -> /page/
location ~ ^/(.+)\/$ {
return 301 /$1/;
}
# Конечный слэш (осторожно с API/JSON)
location / {
try_files $uri $uri/ /index.php?$args;
}
Cloudflare (если используется)
- Transform Rules → URL Rewrite: правило
*/ → */
. - Redirect Rules: 301 с сохранением Query String.
Шаг 3. Обновите все внутренние ссылки
- Меню, футер, виджеты, кнопки, шаблоны.
- Ссылки в контенте страниц/записей (в т.ч. визуальные редакторы/шорткоды).
- hreflang, canonical, JSON-LD, sitemap.xml.
Удобно воспользоваться плагином поиска/замены в БД. На больших сайтах — делайте на staging и проверяйте diff.
Есть спорный момент: можно задеть ссылки на внешние ресурсы. Чтобы избежать проблем, после правок запустите сканирование битых ссылок, как это сделать — смотрим здесь.
Шаг 4. Проверки после запуска
- Google Search Console: URL Inspection → Request indexing для ключевых страниц; раздел Coverage на предмет 404.
- Перегенерируйте sitemap.xml (только новые адреса) и отправьте в GSC.
- Логи/аналитика: отслеживание 301, ошибок 404, падения/возврата трафика (4–6 недель).
- Убедитесь, что нет цепочек редиректов и 302.
Примеры 1:1-маппинга
Было | Стало |
---|---|
/service/ | /service/ |
/portfolio/project-x/ | /portfolio/project-x/ |
/blog/yak-prybraty-html/ | /blog/yak-prybraty-html/ |
Polylang и мультиязычность: что учесть
- Обновите hreflang на новые адреса по каждому языку (
ua
,ru
,en
и т.д.). - Проверьте, что переключатель языков и меню ссылаются на новые URL.
- Перегенерируйте языковые sitemap — чтобы индексы для каждой локали указывали на «чистые» адреса.
Когда лучше повременить с миграцией
- Если на
/
ведёт много сильных бэклинков и нет ресурса сделать перенос «чисто». Тогда — поэтапно. - Если сайт в разгаре большого редизайна/переезда на другой хостинг — не смешивайте несколько рискованных изменений.
Типичные ошибки, которых следует избегать
- 302 вместо 301 при постоянном перенаправлении.
- Цепочки редиректов
/old/ → /old/ → /new/
— должно быть сразу/old/ → /new/
. - Смешанные стандарты (
/post
и/post/
одновременно) — выберите один. - Забытые внутренние ссылки в шаблонах, сайдбарах, JSON-LD, hreflang.
Заключение
Переход на «чистые» URL — отличная идея для UX и SEO. Ключ — дисциплина: 1:1-маппинг, 301 без цепочек, обновлённые внутренние ссылки, корректные canonical
/hreflang
и контроль в GSC. Делаете последовательно — индексация сохранится, а адреса станут аккуратнее и понятнее.

FAQ: Удаление .html из URL в WordPress
Вопрос | Ответ |
---|---|
Вредит ли .html в конце URL SEO? | Нет, само по себе .html не вредит. Проблемы возникают из-за дубликатов, цепочек редиректов и смешанных форм адресов. |
Какой редирект ставить при переходе? | Используйте только 301 редиректы. Они передают вес страницы и сохраняют позиции в поиске. |
Упадёт ли трафик после перехода? | Может быть временное колебание в выдаче (2–6 недель), если всё сделано правильно — трафик восстановится. |
Что выбрать: слеш или без слеша? | Рекомендуется использовать единую форму /page/ . Это проще для масштабирования и SEO. |
Нужно ли обновлять sitemap и canonical? | Да, обязательно. Sitemap должен содержать только новые адреса, а canonical и hreflang должны указывать на обновлённые URL. |
Поки що нема коментарів.