Как изменить адрес авторской страницы в WordPress без плагинов

В WordPress по умолчанию адрес страницы автора формируется как site.ru/author/username. Иногда возникает необходимость изменить этот адрес — например, убрать часть «author», заменить на другое слово или сделать более удобочитаемый URL. В этой статье разберём, как изменить адрес авторской страницы без использования плагинов, используя функции WordPress и правила перезаписи (rewrite rules).

Почему стоит изменить URL авторской страницы

Изменение адреса авторской страницы может пригодиться по нескольким причинам:

  • Для улучшения SEO — более чистый и понятный URL может лучше индексироваться поисковыми системами.
  • Для брендирования — можно заменить «author» на что-то, что больше подходит под тематику сайта.
  • Для безопасности — скрыть стандартные пути WordPress.

При этом важно сделать всё корректно, чтобы не сломать навигацию и не получить ошибки 404.

Как работает адрес авторской страницы в WordPress

По умолчанию WordPress использует rewrite rules для формирования адресов архивов. Для авторской страницы шаблонная структура — /author/%author_name%/. Чтобы изменить это, нам нужно:

  1. Зарегистрировать новую rewrite rule с нужным нам префиксом.
  2. Изменить функцию, которая формирует ссылку на автора (например, author_link), чтобы она генерировала новые URL.
  3. Обновить правила перезаписи (flush rewrite rules) после внесения изменений.

Изменение адреса авторской страницы: пошаговый пример

Рассмотрим пример, когда мы хотим заменить «author» на «profile» — URL станет site.ru/profile/username.

1. Добавляем новую rewrite rule

Для этого используем хук init и функцию add_rewrite_rule:

function wphost_add_custom_author_rewrite() {
    add_rewrite_rule(
        '^profile/([^/]+)/?$',
        'index.php?author_name=$matches[1]',
        'top'
    );
}
add_action('init', 'wphost_add_custom_author_rewrite');

Эта функция говорит WordPress, что при запросе /profile/username он должен подгружать архив автора с именем пользователя из URL.

2. Изменяем генерацию ссылок на автора

Чтобы ссылки в меню, виджетах и шаблонах указывали на новый адрес, подключаем фильтр author_link:

function wphost_custom_author_link($link, $author_id, $author_nicename) {
    return home_url('/profile/' . $author_nicename . '/');
}
add_filter('author_link', 'wphost_custom_author_link', 10, 3);

Теперь, когда вызовется get_author_posts_url() или аналогичные функции, они будут возвращать адрес с «profile».

3. Сбрасываем правила перезаписи

Чтобы новые правила заработали, нужно обновить правила перезаписи. Это можно сделать вручную, зайдя в админке WordPress в Настройки → Постоянные ссылки и нажав «Сохранить изменения» без изменений, или программно:

function wphost_flush_rewrite_on_activation() {
    wphost_add_custom_author_rewrite();
    flush_rewrite_rules();
}
register_activation_hook(__FILE__, 'wphost_flush_rewrite_on_activation');
<

Если вы вносите код не через плагин, а в functions.php темы, проще обновить правила через админку.

Как убрать ссылку «author» полностью и использовать свой префикс

В примере выше мы заменили «author» на «profile». Если хотите убрать префикс и иметь URL вида site.ru/username, стоит быть осторожным, чтобы не конфликтовать с существующими страницами или записями.

Для этого нужно добавить более сложные правила, проверить конфликт с другими типами записей, и использовать фильтр request для правильной маршрутизации.

Пример добавления rewrite rule без префикса:

function wphost_remove_author_base() {
    add_rewrite_rule(
        '^([^/]+)/?$',
        'index.php?author_name=$matches[1]',
        'top'
    );
}
add_action('init', 'wphost_remove_author_base');

Но такой подход может привести к конфликтам — например, если у вас есть страница с названием совпадающим с ником автора. Для многих сайтов лучше использовать префикс.

Дополнительные советы и рекомендации

Проверка работоспособности

После внесения изменений проверьте, что авторские страницы корректно открываются по новому адресу, а старые URL возвращают 404 или делают редирект.

Если нужно сделать редирект со старых URL /author/username на новые, можно добавить в functions.php:

function wphost_redirect_old_author_urls() {
    if (is_author() && strpos($_SERVER['REQUEST_URI'], '/author/') !== false) {
        $author = get_queried_object();
        wp_redirect(home_url('/profile/' . $author->user_nicename . '/'), 301);
        exit;
    }
}
add_action('template_redirect', 'wphost_redirect_old_author_urls');

SEO и пользовательский опыт

Обязательно настройте 301 редиректы с прежних адресов, чтобы не потерять SEO-позиции. Также обновите все внутренние ссылки в меню и виджетах.

Использование плагинов

Хотя мы рассмотрели способ без плагинов, если вы предпочитаете готовые решения, есть плагины вроде Clearfy Pro, которые помогают управлять URL и оптимизацией WordPress, включая возможность менять базовые ссылки.

Заключение

Изменение адреса авторской страницы в WordPress — задача технически несложная, но требующая аккуратности при работе с rewrite rules и генерацией ссылок. Мы рассмотрели, как заменить префикс «author» на любой другой, чтобы улучшить структуру URL и адаптировать сайт под свои нужды. Такой подход поможет сделать сайт более профессиональным и удобным для пользователей.

Как добавить автоматическое обновление плагинов WordPress без помощи SSH
24.03.2026
Как отключить индексацию отдельных страниц WordPress для поисковых систем
28.03.2026
Как избежать проблем с блокировкой базы данных в WordPress
26.02.2026
Как использовать хуки для решения конкретных проблем в WordPress
05.12.2025
Как разрешить доступ к файлам WordPress через .htaccess: практическое руководство
02.01.2026