Если в адресах рубрик у вас появляется /category/, это не ошибка WordPress, а стандартная часть структуры постоянных ссылок. Убрать её можно, но делать это нужно аккуратно: после изменения старые адреса перестанут открываться без редиректа, а у рубрик с одинаковыми слагами могут появиться конфликты.
Ниже разберём, как удалить /category/ из URL рубрик, когда это действительно уместно и как проверить, что сайт после изменения работает нормально.
Что именно меняется и почему это вообще возможно
По умолчанию WordPress формирует адрес рубрики примерно так: site.ru/category/news/. Часть category — это базовый префикс рубрик, который задаётся в настройках постоянных ссылок. Его можно заменить на другой или убрать совсем, но WordPress не делает это автоматически без последствий.
Если просто изменить структуру, новые ссылки начнут работать, а старые адреса останутся в индексе поисковиков и в закладках пользователей. Поэтому задача состоит не только в том, чтобы убрать префикс, но и в том, чтобы сохранить доступность старых URL через редирект 301.
Самый простой способ: изменить базу рубрик в настройках
Если вам нужно не только убрать /category/, но и задать более короткий префикс, это делается штатно через админку WordPress.
Откройте Настройки → Постоянные ссылки и найдите поле База рубрик. По умолчанию там обычно стоит category. Можно заменить это значение на любое другое слово, например rubrics или blog. После сохранения адреса рубрик изменятся на новый шаблон.
Этот вариант безопаснее, чем попытка полностью убрать базу «вручную», потому что WordPress и плагины лучше понимают явный префикс, чем пустую структуру. Но если вам нужен именно короткий URL без лишнего сегмента, одного этого шага недостаточно.
Как убрать /category/ полностью
Полностью удалить префикс можно двумя путями: через плагин или через код. Для большинства сайтов практичнее плагин, если не хочется трогать тему и писать собственную логику. Если нужен контроль без лишних зависимостей, используют код в functions.php дочерней темы или в собственном мини-плагине.
Вариант с плагином
Для задачи удаления /category/ часто используют плагины, которые умеют менять базу рубрик и настраивать редиректы. Это удобно, если сайт ведётся без разработчика и нужно решение через интерфейс. Но перед установкой проверьте, что плагин давно обновлялся и не конфликтует с вашей версией WordPress.
Если плагин предлагает просто скрыть префикс без редиректа, этого недостаточно. Старые ссылки должны вести на новые адреса через 301, иначе вы получите битые URL и потерю трафика из поиска.
Вариант с кодом
Если вы работаете с темой или дочерней темой, можно добавить фильтр, который меняет базу рубрик. Для этого в functions.php дочерней темы добавляют код, который возвращает пустую базу для рубрик:
add_filter( 'category_rewrite_rules', function( $rules ) {
return $rules;
} );
add_filter( 'category_base', function() {
return '';
} );На практике одного фильтра обычно недостаточно для стабильной работы на всех сайтах, потому что нужно ещё корректно перестроить правила перезаписи и обработать старые URL. Поэтому для реального проекта лучше использовать проверенное решение, которое уже умеет работать с редиректами, а не собирать логику вручную без тестов.
Если вы не уверены в PHP и rewrite-правилах, не экспериментируйте на рабочем сайте. Ошибка в коде может сломать ЧПУ не только у рубрик, но и у записей.
Что обязательно сделать после изменения URL
После удаления /category/ нужно обновить правила перезаписи. В админке это делается просто: откройте Настройки → Постоянные ссылки и нажмите Сохранить изменения без дополнительных правок. WordPress пересоберёт rewrite rules.
Если вы меняли структуру через код или плагин, этого шага всё равно обычно достаточно. Но если сайт работает на нестандартной конфигурации сервера, например на Nginx с ручными правилами, может потребоваться проверить, что конфиг корректно отдаёт запросы в WordPress. На Apache это обычно проще, потому что достаточно стандартного .htaccess.
Как не потерять трафик: настройте 301-редирект со старых адресов
Это самый важный момент. После удаления /category/ старые адреса вида /category/news/ должны отдавать 301 Moved Permanently и вести на новый URL /news/. Без этого поисковые системы будут видеть две версии адресов или получать 404, а пользователи — попадать на несуществующие страницы.
Если вы используете плагин для изменения базы рубрик, проверьте, умеет ли он автоматически настраивать редиректы. Если нет, редирект придётся делать отдельно — через плагин редиректов, конфигурацию сервера или собственную логику. Для большинства владельцев сайтов удобнее и безопаснее использовать плагин редиректов, чем править серверные правила вручную.
Проверять редирект нужно не «на глаз», а по факту ответа сервера. Откройте старый адрес в браузере и убедитесь, что он ведёт на новый. Ещё лучше проверить заголовки через инструменты разработчика или онлайн-проверку редиректов: старый URL должен отвечать кодом 301, а конечный адрес — 200.
Когда удалять /category/ не стоит
Короткий URL выглядит аккуратно, но не всегда оправдан. Есть несколько случаев, когда лучше оставить стандартную базу рубрик:
- если сайт уже давно в индексе и у рубрик есть стабильный трафик;
- если у вас много вложенных рубрик и без префикса возрастает риск конфликтов со страницами и записями;
- если сайт поддерживается без разработчика и вы не готовы следить за редиректами;
- если в проекте уже есть внешние ссылки на старые адреса, и их слишком много, чтобы спокойно менять структуру.
Главная проблема при удалении базы рубрик — не сам префикс, а возможные совпадения с другими URL. Например, если у вас есть страница или запись со слагом, совпадающим со слагом рубрики, WordPress может начать путаться в маршрутизации. На небольших сайтах это случается реже, но риск всё равно есть.
Как проверить, что всё работает правильно
После изменений пройдитесь по трём точкам:
- Откройте новую ссылку рубрики и убедитесь, что страница открывается без ошибок.
- Откройте старую ссылку с
/category/и проверьте, что срабатывает 301-редирект. - Посмотрите несколько внутренних ссылок на сайте: они должны вести уже на новый формат URL, а не на старый.
Если старая ссылка отдаёт 404, значит редирект не настроен или rewrite rules не обновились. Если новая ссылка не открывается, проверьте, не конфликтует ли слаг рубрики с записью, страницей или другим типом контента.
Что в итоге выбрать
Если вам нужен просто более аккуратный адрес, сначала попробуйте штатную настройку базы рубрик в админке. Если требуется полностью убрать /category/, делайте это только вместе с 301-редиректом со старых URL. Для небольшого сайта это можно решить плагином, для более контролируемого проекта — через код и аккуратную проверку маршрутизации.
Самая частая ошибка здесь — поменять структуру ссылок и забыть про старые адреса. Внешне сайт выглядит нормально, но часть трафика теряется, а в поиске появляются дубли или ошибки. Поэтому после любого изменения URL рубрик проверяйте не только внешний вид ссылки, но и ответ сервера.