Постоянные ссылки в WordPress: настройка за 10 минут
Как превратить адреса вида ?p=123 в человекочитаемые ссылки, не поломав уже проиндексированные страницы. Пошагово, с проверкой на каждом этапе.

По умолчанию свежая установка WordPress отдаёт адреса вида site.ru/?p=123. Их не любят ни люди, ни поисковики. За 10 минут вы переключите сайт на понятные ссылки вроде site.ru/kak-nastroit-ssylki/ и проверите, что старые страницы не выпали в 404. Инструкция для WordPress 6.x на Apache или Nginx.
Что нужно иметь до начала
- Доступ в админку с ролью Администратор — только у неё есть раздел настроек постоянных ссылок.
- Доступ к файлам сайта по FTP или через файловый менеджер хостинга — на случай, если файл
.htaccessпридётся править руками. - Знание, какой веб-сервер у вас стоит: Apache (тогда работает
.htaccess) или Nginx (тогда правила прописываются в конфиге сервера, и через админку они не применятся сами). - Свежая резервная копия сайта. Смена структуры ссылок обратима, но бэкап лишним не будет.
Если сайт уже работает и проиндексирован, отдельно держите в голове: смена структуры меняет URL всех записей. Старые адреса перестанут открываться, если не настроить переадресацию. Об этом — в конце.
Шаг 1. Откройте настройки постоянных ссылок
В админке зайдите в Настройки → Постоянные ссылки (в англоязычной версии — Settings → Permalinks). Откроется страница с готовыми вариантами структуры и полем для своего шаблона.
Проверка: вы видите список из нескольких переключателей — «Простые», «День и название», «Название записи» и другие.
Шаг 2. Выберите структуру
Для большинства сайтов подходит вариант «Название записи» — адрес получается коротким и содержит слаг статьи. Для новостного сайта, где важна дата, берут «Месяц и название».
Вот что стоит понимать про основные варианты:
| Вариант | Как выглядит URL | Кому подходит |
|---|---|---|
| Простые | ?p=123 | Никому. Значение по умолчанию, которое стоит сменить |
| Название записи | /nazvanie-zapisi/ | Блоги, корпоративные сайты, магазины |
| Месяц и название | /2025/06/nazvanie/ | Новостные ленты, где важна дата |
| Произвольно | задаёте сами | Когда нужна своя логика с рубриками |
Короткий URL без дат легче читать и проще переносить между рубриками — дата в адресе жёстко привязывает статью к моменту публикации.
Если хотите свою структуру
В поле «Произвольно» доступны теги-заполнители. Самые ходовые:
%postname%— слаг записи;%category%— слаг рубрики;%year%,%monthnum%,%day%— год, месяц, день.
Например, структура /%category%/%postname%/ даст адрес /tehnologii/kak-nastroit-ssylki/. Полный список тегов есть в документации WordPress по постоянным ссылкам — не выдумывайте теги на глаз, работают только заявленные.
Шаг 3. Сохраните изменения
Нажмите «Сохранить изменения» внизу страницы. WordPress перезапишет правила перенаправления (rewrite rules) во внутренней таблице и, на Apache, попробует обновить файл .htaccess.
Проверка: откройте любую опубликованную запись из списка «Записи». В адресной строке должен быть новый формат, а страница — открыться без ошибки 404.
Шаг 4. Проверьте .htaccess (только Apache)
Если файл .htaccess в корне сайта доступен для записи, WordPress добавит туда блок автоматически. Если прав на запись нет, на странице настроек появится сообщение с готовым текстом, который нужно вставить вручную. Стандартный блок для WordPress выглядит так:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Вставьте этот блок в самое начало файла .htaccess в корне сайта и сохраните. Если сайт лежит в подпапке, значение RewriteBase и путь в последней строке нужно поправить под неё.
Проверка: снова откройте запись. Заработало — .htaccess в порядке.
Шаг 5. Nginx — правила в конфиге, не в админке
На Nginx файл .htaccess не работает: сервер его игнорирует. Правило перенаправления прописывается в конфиге сайта, в блоке server. Типовая директива для WordPress:
location / {
try_files $uri $uri/ /index.php?$args;
}
После правки конфига перезагрузите Nginx командой sudo nginx -s reload (проверив синтаксис через sudo nginx -t). На большинстве хостингов с Nginx это правило уже стоит по умолчанию — тогда достаточно шагов 1–3. Уточните у поддержки хостинга, если не уверены.
Если не получилось
- Главная открывается, а записи выдают 404. Классический симптом: правила перезаписи не применились. На Apache проверьте, что модуль
mod_rewriteвключён и блок из шага 4 есть в.htaccess. На Nginx — что в конфиге есть директиваtry_files. После правки зайдите в Настройки → Постоянные ссылки и ещё раз нажмите «Сохранить изменения». - Сообщение «Файл .htaccess доступен только для чтения». Прав на запись нет. Скопируйте текст, который WordPress показал на странице, и вставьте в файл вручную через FTP.
- После смены структуры пропал трафик из поиска. Старые URL стали недоступны, поисковик получает 404. Нужна переадресация 301 со старых адресов на новые — см. следующий раздел.
- «500 Internal Server Error» после правки .htaccess. В файле опечатка или дублирующийся блок. Уберите вставленный фрагмент, сохраните, убедитесь, что сайт открылся, и вставьте блок заново, точно по образцу выше.
Что делать со старыми ссылками
Если сайт был проиндексирован, смена структуры без переадресации теряет позиции. Настройте редиректы 301 со старых URL на новые. Проще всего это делает SEO-плагин с модулем редиректов либо отдельный плагин перенаправлений — конкретное имя ищите в каталоге плагинов WordPress, работающих версий там несколько. После настройки проверьте старый адрес: он должен открывать новую страницу, а не 404.
Что настроить дальше
После смены структуры отправьте обновлённую карту сайта в панель вебмастера поисковика и проверьте в ней раздел с ошибками сканирования через несколько дней — там видно, остались ли живые 404. Дальше стоит проверить слаги старых записей: WordPress берёт их из заголовка, и у длинных статей URL бывает громоздким. Слаг правится в редакторе записи, но менять его у проиндексированных страниц можно только с редиректом.
Проверка грамотности: Орфография, пунктуация, стиль — с объяснением каждой правки
Спросить за 10 ₽Источники: Using Permalinks — WordPress Documentation, Nginx — WordPress Developer Resources
Частые вопросы
У меня Nginx, я сменил структуру в админке, но записи выдают 404. Почему?
Можно ли безопасно сменить структуру на сайте, который уже год в поиске?
Что выбрать: «Название записи» или структуру с датой?
А если у меня версия WordPress старше 6.x?
Правка .htaccess опасна? Могу ли я уронить сайт?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.