Как удалить /category/ из URL в WordPress через настройки и код

Если в адресах рубрик у вас сейчас есть лишний фрагмент /category/, его можно убрать и сделать URL короче. В WordPress это решается двумя путями: через настройки постоянных ссылок, если хостинг и структура сайта позволяют, или через код, если нужен более контролируемый вариант. Но перед изменениями важно понимать один момент: после смены структуры ссылок старые адреса рубрик перестанут открываться, если не настроить редиректы.

Ниже разберу оба способа и покажу, как проверить результат без лишнего риска для сайта.

Когда вообще можно убрать /category/

Фрагмент /category/ появляется в URL рубрик из-за базовой части для категорий. По умолчанию WordPress использует её, чтобы отличать рубрики от записей, страниц и других типов архивов. Убрать её можно, если вы хотите:

  • сделать адреса короче и чище;
  • убрать технический префикс из публичных URL;
  • привести структуру ссылок к более лаконичному виду.

Но есть и ограничения. Если у вас уже опубликован сайт, смена структуры может затронуть индексацию, старые ссылки из поиска, закладки и внешние переходы. Поэтому на живом проекте лучше сразу предусмотреть перенаправления со старых адресов на новые.

Самый простой способ: изменить базу рубрик в настройках

В WordPress есть штатная настройка для базы рубрик. Она не всегда полностью убирает префикс, но в ряде конфигураций позволяет заменить /category/ на более короткое значение или на пустую базу, если это поддерживается темой, плагинами и сервером.

Что нужно сделать:

  1. Откройте админку WordPress.
  2. Перейдите в раздел Настройки → Постоянные ссылки.
  3. Найдите поле База рубрик или Category base.
  4. Удалите значение category или замените его на нужный вариант.
  5. Нажмите Сохранить изменения.

После сохранения WordPress обновит правила маршрутизации. Если всё прошло нормально, адреса рубрик изменятся сразу.

Этот способ удобен, когда вы хотите обойтись без правки файлов. Но у него есть практическое ограничение: WordPress не во всех случаях позволяет безопасно оставить базу рубрик полностью пустой через интерфейс, особенно если на сайте уже есть пересечения в слаге рубрик и записей. Если после сохранения адреса начинают конфликтовать, лучше перейти к варианту с кодом и редиректами.

Удаление /category/ через код: когда это оправдано

Код нужен, если вы хотите именно убрать префикс, а не просто заменить его на другое слово. Такой вариант чаще используют на сайтах, где структура уже продумана, рубрики не пересекаются с другими URL, а владелец готов контролировать редиректы.

Самый безопасный путь — добавить небольшой код в functions.php дочерней темы или в собственный мини-плагин. Не правьте ядро WordPress: после обновления изменения всё равно пропадут.

Ниже пример, который убирает базу рубрик из URL и корректно обрабатывает запросы к рубрикам:

add_filter( 'category_link', function( $termlink, $term_id ) {
    $term = get_term( $term_id, 'category' );

    if ( $term && ! is_wp_error( $term ) ) {
        return home_url( user_trailingslashit( $term->slug, 'category' ) );
    }

    return $termlink;
}, 10, 2 );

add_action( 'init', function() {
    add_rewrite_rule( '([^/]+)/?$', 'index.php?category_name=$matches[1]', 'top' );
    add_rewrite_rule( '([^/]+)/page/([0-9]{1,})/?$', 'index.php?category_name=$matches[1]&paged=$matches[2]', 'top' );
} );

Этот пример показывает сам принцип, но на реальном сайте его нельзя ставить без проверки структуры URL. Причина простая: правило ([^/]+)/?$ слишком общее и может конфликтовать со страницами, записями и другими типами контента. Для сайтов с обычными страницами в корне домена такой вариант часто оказывается слишком рискованным.

Поэтому на практике лучше использовать более аккуратное решение: либо менять базу рубрик через настройки, либо применять готовый плагин, который умеет безопасно управлять структурой ссылок и редиректами. Если вы пишете код вручную, нужно отдельно учитывать все пересечения URL на конкретном сайте.

Что обязательно сделать после изменения URL

Если старые адреса рубрик уже были в индексе или где-то опубликованы, после смены структуры нужно сохранить доступность старых ссылок. Иначе пользователь или поисковый робот получит 404.

Минимальный набор действий такой:

  • обновить правила постоянных ссылок в Настройки → Постоянные ссылки;
  • проверить, открываются ли новые адреса рубрик;
  • настроить 301-редиректы со старых URL на новые, если структура изменилась;
  • очистить кэш сайта и кэш плагинов, если они используются;
  • проверить несколько рубрик вручную в браузере.

Если у вас установлен плагин кэширования или серверный кэш на хостинге, старые адреса могут продолжать открываться из кэша даже после изменения настроек. В таком случае сначала очистите кэш, а уже потом проверяйте результат.

Как проверить, что всё работает правильно

После настройки откройте несколько рубрик в новом формате и убедитесь, что:

  • адрес больше не содержит /category/;
  • страница рубрики открывается без ошибки 404;
  • внутри рубрики отображаются нужные записи;
  • старый адрес либо редиректит на новый, либо больше не используется намеренно.

Проверять лучше не одну рубрику, а несколько: верхнего уровня, вложенную и ту, у которой длинный слаг. Так вы быстрее заметите проблемы с правилами маршрутизации.

Если после изменений главная страница или отдельные записи начали открываться неправильно, значит правило для рубрик конфликтует с другими URL. В этом случае нужно откатить изменения и выбрать более безопасный вариант — обычно это замена базы рубрик через настройки, а не агрессивная правка rewrite-правил.

Какие ошибки встречаются чаще всего

На практике проблемы обычно связаны не с самой идеей убрать /category/, а с тем, как именно это сделали.

  • Не настроили редирект. Старые ссылки из поиска и внешних сайтов начинают отдавать 404.
  • Использовали слишком общее rewrite-правило. Оно перехватывает страницы и записи в корне сайта.
  • Не обновили постоянные ссылки. WordPress продолжает работать по старым правилам.
  • Не очистили кэш. В браузере или на сервере остаются старые маршруты.
  • Сделали изменение в родительской теме. После обновления всё пропадает.

Если сайт уже рабочий и на него идут переходы из поиска, безопаснее сначала создать резервную копию, а потом менять структуру URL. Это особенно важно, если на сайте много рубрик и часть из них уже проиндексирована.

Что выбрать: настройки или код

СпособКогда подходитРиск
Настройки WordPressНужен простой и быстрый вариант без глубокой правки сайтаНизкий, если структура не конфликтует с другими URL
КодНужна точная настройка структуры и вы понимаете последствияВыше, особенно при конфликте с записями и страницами

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

В итоге убрать /category/ из URL в WordPress можно, но делать это стоит не вслепую. Сначала меняете структуру, потом проверяете открытие рубрик, затем обязательно закрываете старые адреса редиректами. Так адреса станут короче, а сайт не потеряет работоспособность.

Как удалить Emoji из WordPress для ускорения сайта
18.09.2026
Как добавить поле телефона в регистрацию WordPress с валидацией
03.10.2026
Как использовать WPCommunity для создания внутреннего комьюнити в WordPress
02.09.2026
Как удалить /category/ из URL в WordPress через настройки и код
14.10.2026
Как настроить robots.txt в WordPress для закрытия служебных страниц
11.10.2026