Гид по технологиям

Как безопасно сменить структуру постоянных ссылок WordPress на «Имя записи»

• 5 min read • WordPress • Обновлено 22 Nov 2025
Сменить структуру URL WordPress на «Имя записи»
Сменить структуру URL WordPress на «Имя записи»

Зачем менять структуру URL

Структура URL влияет на SEO, удобство пользователей и счётчики переходов. Переключение на «Имя записи» делает адреса короче и читабельнее, но при неправильной переадресации вы потеряете трафик и получите 404 ошибки.

Важно: инструкция покрывает WordPress в корне сайта и предполагает, что сервер — Apache. Для WordPress в подкаталоге или на Nginx шаги отличаются.

Шаг 1: Измените настройки постоянных ссылок в панели WordPress

Откройте админку WordPress: Настройки → Постоянные ссылки. Выберите опцию «Имя записи» и сохраните изменения.

Экран настроек постоянных ссылок в админке WordPress

Выберите радиокнопку «Имя записи» и нажмите «Сохранить изменения». Проверьте несколько существующих страниц и записей — они должны открываться без ошибок.

Выбор опции

Если при этом появляются 404 или циклы редиректов — не сохраняйте изменения ещё раз; верните резервную копию .htaccess и БД и разберитесь в конфликте (см. разделы ниже).

Шаг 2: Добавьте правила перенаправлений в .htaccess

Чтобы старые URL корректно перебрасывались на новые и не терялся SEO, добавьте 301-перенаправления в файл .htaccess в корне сайта. Рекомендуется вставлять новые правила выше стандартных правил WordPress (до блока “# BEGIN WordPress”). Обязательно сделайте резервную копию .htaccess перед изменением.

Важно: если вы используете www в домене, замените в примерах http://example.com на http://www.example.com.

Удалить /год/месяц/день из URL

Старый URL:

http://example.com/2014/08/21/post-name

Правило:

# Remove year and day from permalink structure
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ http://example.com/$4

Объяснение: регулярное выражение захватывает год, месяц, день и остаток пути ($4) и перенаправляет на короткий вариант.

Удалить /год/месяц из URL

Старый URL:

http://example.com/2014/08/post-name

Правило:

# Remove year and month from permalink structure
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/(.*)$ http://example.com/$3

Удалить префикс /category/ из URL

Старый URL:

http://example.com/category/post-name

Правило (корректное):

# Remove category from permalink structure
RedirectMatch 301 ^/category/(.*)$ http://example.com/$1

Пояснение: многие темы и плагины используют префикс /category/. Это правило уберёт префикс и оставит имя записи.

Перенаправить /archive/ на постоянную ссылку по ID

Старый URL:

http://example.com/archive/123

Правило:

# Redirect archive to post name structure
RedirectMatch 301 ^/archive/(\d+)$ http://example.com/?p=$1

Пояснение: это полезно, если ранее использовались фрагментные ссылки по ID; перенаправление отдаёт запрос на обработку WordPress по параметру p.

Nginx: эквивалентные примеры

Если сайт работает на Nginx (нет .htaccess), используйте директивы в конфигурации сервера (пример в блок server):

# Remove year/month/day
rewrite ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ /$4 permanent;

# Remove year/month
rewrite ^/([0-9]{4})/([0-9]{2})/(.*)$ /$3 permanent;

# Remove category
rewrite ^/category/(.*)$ /$1 permanent;

# Archive by ID
rewrite ^/archive/(\d+)$ /?p=$1 permanent;

После правок перезапустите nginx: sudo systemctl reload nginx.

Альтернативные подходы

  • Плагин Redirection: удобный UI, лог редиректов и условные правила; полезно при множестве ручных правил.
  • Yoast SEO / RankMath: предлагают управление каноническими URL и могут помочь с редиректами (часто в премиум-версии).
  • Программный редирект в functions.php: использовать wp_redirect() для более тонкой логики (подходит разработчикам).
  • Массовая правка в базе и регенерация ссылок — рискованно, требует резервной копии и навыков SQL.

Выбор подхода зависит от числа постов, навыков и доступа к серверу.

Когда перенаправления могут НЕ сработать

  • WordPress в подкаталоге: правила в корневом .htaccess не применятся.
  • Nginx: .htaccess игнорируется — используйте блоки конфигурации Nginx.
  • Конфликт плагинов кеширования или плагинов редиректов: они могут переопределять ваши правила.
  • Пользовательские типы записей и таксономии: структура URL может отличаться и требовать индивидуальных правил.
  • CDN или прокси-серверы (Cloudflare): кеширование может показывать старые ответы.

Чек-лист перед и после смены (ролевая разбивка)

Разработчик / админ:

  • Резервная копия файлов и БД.
  • Скопировать текущий .htaccess в безопасное место.
  • Вставить новые RedirectMatch выше WordPress-блока.
  • Если Nginx — внести изменения в конфиг и перезапустить.

SEO-специалист:

  • Сформировать карту соответствия старых URL → новых (пример: CSV).
  • Проверить, что важные страницы возвращают 301, а не 302.
  • Обновить sitemap.xml и отправить в Google Search Console.

Контент-менеджер:

  • Проверить внутренние ссылки в тексте и меню.
  • Обновить ссылки в навигации и в панелях виджетов.

Критерии приёмки

  • Любой старый URL из контрольного набора должен возвращать 301 и вести на корректную страницу (curl -I http://example.com/2014/08/21/post-name).
  • На целевой странице статус 200 и canonical указывает на новый чистый URL.
  • В течение 2–7 дней не растёт число 404 в Google Search Console.
  • Логи сервера не содержат циклических редиректов для изменённых адресов.

Тесты и приёмо-сдаточные проверки

  1. Выполните curl -I для нескольких старых URL, ожидайте строку “HTTP/1.1 301 Moved Permanently” и Location: с новым URL.
  2. Откройте старые URL в браузере (инкогнито), убедитесь, что происходит перенаправление и контент отображается корректно.
  3. Проверка Canonical: в HTML целевой страницы meta rel=”canonical” указывает на короткий URL.
  4. Мониторинг: включите логирование 404 и проверьте через 1 и 7 дней.

Риски и способы их уменьшить

  • Риск: потеря трафика из-за неправильных редиректов. Смягчение: тестируйте выборочно, держите бэкапы.
  • Риск: циклические редиректы. Смягчение: проверяйте Location заголовки и серверные логи.
  • Риск: кеширование старых ответов. Смягчение: очистите кеш на CDN/сервере и у плагинов.

Короткая шпаргалка по регулярным выражениям

  • ^ — начало пути.
  • $ — конец строки.
  • (\d+) — группа цифр (одна или более).
  • (.*) — любая последовательность символов.
  • RedirectMatch 301 pattern target — директива Apache для 301-редиректов по regex.

Резюме

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

Важно: перед массовыми изменениями создайте карту URL и протестируйте на небольшой выборке.

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро