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

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

Почему стоит отказаться от плагинов для изменения автора постов

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

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

Как удалить отображение автора из шаблонов WordPress

Первый и самый простой способ — изменить шаблоны темы, чтобы убрать вывод автора. Обычно автор выводится в файлах single.php, content.php или в других шаблонах записи с помощью функции the_author() или get_the_author().

Чтобы убрать автора, нужно найти в этих файлах строки с функцией вывода автора и удалить их или закомментировать. Например:

<span class="post-author"><?php the_author(); ?></span>

Удалите или закомментируйте этот блок:

<!-- <span class="post-author"><?php the_author(); ?></span> -->

После этого на фронтенде имя автора отображаться не будет.

Что делать, если тема использует функцию get_template_part()

В современных темах вывод метаданных записи организован через отдельные шаблонные части. Например, вызов get_template_part('template-parts/content', 'single') подключает файл template-parts/content-single.php. Внутри него может быть вызов функции вывода автора.

Пройдитесь по этим файлам и найдите вызовы the_author() или get_the_author(). Удалите их для полного скрытия автора.

Как изменить автора записи программно — переопределяем вывод автора

Если нужно не удалить, а изменить автора, например, заменить его на фиксированное имя, можно воспользоваться фильтрами WordPress. Один из таких фильтров — the_author, который позволяет менять вывод имени автора перед выводом на страницу.

Добавьте в файл functions.php вашей темы следующий код:

function wpgenerate_change_post_author($author) {
    // Задаем новое имя автора
    $new_author = 'Редакция сайта';
    return $new_author;
}
add_filter('the_author', 'wpgenerate_change_post_author');

Теперь на всех страницах вместо имени фактического автора будет выводиться текст «Редакция сайта».

Изменение автора для определенных условий

Можно сделать замену автора только для определенных типов записей или категорий. Например, чтобы заменить автора только для записей из категории «Новости», используйте такой код:

function wpgenerate_change_author_for_news($author) {
    if (is_single() && has_category('novosti')) {
        return 'Новостной редактор';
    }
    return $author;
}
add_filter('the_author', 'wpgenerate_change_author_for_news');

Таким образом, вы гибко управляете выводом имени автора в зависимости от условий.

Удаление автора из RSS-ленты и метаданных

Если вы хотите убрать автора не только из фронтенда, но и из RSS-ленты, нужно дополнительно отредактировать вывод метаданных.

Для удаления автора из RSS можно использовать фильтр the_author_rss:

function wpgenerate_remove_author_from_rss($author) {
    return '';
}
add_filter('the_author_rss', 'wpgenerate_remove_author_from_rss');

Это особенно актуально, если вы не хотите раскрывать информацию об авторах через внешние каналы.

Как программно изменить автора записи (сменить user_id) в базе

Если нужно не просто изменить отображаемое имя, а сменить фактического автора записи (ID пользователя), это делается через обновление записи в базе данных. В WordPress для этого есть функция wp_update_post().

Пример смены автора записи с ID 123 на пользователя с ID 5:

$post_data = array(
    'ID'          => 123,
    'post_author' => 5
);
wp_update_post($post_data);

Такой код можно выполнить в административной части или через подключенный сниппет.

Массовая смена автора для всех записей

Чтобы поменять автора для всех записей, можно использовать WP_Query и цикл:

$args = array(
    'post_type'      => 'post',
    'posts_per_page' => -1
);
$all_posts = new WP_Query($args);

if ($all_posts->have_posts()) {
    while ($all_posts->have_posts()) {
        $all_posts->the_post();
        $post_id = get_the_ID();

        wp_update_post(array(
            'ID'          => $post_id,
            'post_author' => 5
        ));
    }
    wp_reset_postdata();
}

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

Вывод кастомного автора: пример создания функции для темы wpgenerate

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

function wpgenerate_get_custom_author() {
    // Скрыть автора для определенных записей
    if (is_single() && has_category('skryt-avtora')) {
        return '';
    }

    // Заменить имя автора
    $new_author = 'Команда WPGenerate';
    return '<a href="' . get_author_posts_url(get_the_author_meta('ID')) . '">' . esc_html($new_author) . '</a>';
}

В шаблонах темы вывод вызывается так:

echo wpgenerate_get_custom_author();

Этот подход позволит быстро управлять выводом автора в одном месте.

Резюме по работе с автором постов без плагинов

Изменение или удаление автора записи в WordPress можно эффективно реализовать без плагинов, используя:

  • Редактирование шаблонов темы (удаление вызовов the_author());
  • Фильтры WordPress (the_author, the_author_rss) для замены имени автора;
  • Функцию wp_update_post() для программной смены автора по user_id;
  • Создание универсальных функций для вывода автора с учетом бизнес-логики.

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

Как установить автоматический редирект в WordPress без плагинов
24.01.2026
Как создать динамические метаданные для постов WordPress
25.12.2025
WooCommerce: автоматическое удаление неактивных вариаций товаров с помощью кода
15.05.2026
Автоматическая оптимизация базы данных WordPress: лучшие практики и примеры кода
11.11.2025
Как автоматически отправлять сообщения в Telegram из WordPress
09.03.2026