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

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

Почему стоит менять автора записи вручную, а не через плагины

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

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

Как WordPress хранит информацию об авторе записи

Автор записи в WordPress хранится в таблице wp_posts в поле post_author. Это поле содержит ID пользователя из таблицы wp_users. Для изменения автора достаточно обновить это поле.

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

Изменение автора через SQL-запрос

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

Пример запроса для изменения автора записи с ID = 123 на пользователя с ID = 7:

UPDATE wp_posts SET post_author = 7 WHERE ID = 123;

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

UPDATE wp_posts SET post_author = 7 WHERE post_author = 3 AND post_date < '2023-01-01';
<

Этот запрос изменит автора всех записей, написанных пользователем с ID 3 до 1 января 2023 года.

Изменение автора через PHP-код с использованием функций WordPress

Для безопасного обновления можно написать небольшой PHP-скрипт, который будет использовать встроенную функцию wp_update_post(). Это позволит сохранить совместимость с другими функциями WordPress и избежать ошибок.

Пример функции для изменения автора одной записи:

function wplessons_change_post_author($post_id, $new_author_id) {
    $post = get_post($post_id);
    if (!$post) {
        return false; // Запись не найдена
    }
    $post->post_author = $new_author_id;
    $result = wp_update_post($post);
    return !is_wp_error($result);
}

Использовать её можно так:

if (wplessons_change_post_author(123, 7)) {
    echo 'Автор изменён успешно';
} else {
    echo 'Ошибка при изменении автора';
}

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

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

$args = [
    'author' => 3,
    'date_query' => [
        ['before' => '2023-01-01'],
    ],
    'posts_per_page' => -1,
    'post_type' => 'post',
];

$query = new WP_Query($args);
if ($query->have_posts()) {
    while ($query->have_posts()) {
        $query->the_post();
        wplessons_change_post_author(get_the_ID(), 7);
    }
    wp_reset_postdata();
}

Такой способ позволяет гибко управлять выборкой и обрабатывать большое количество записей без прямого вмешательства в базу.

Использование плагина Clearfy Pro для смены автора

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

В Clearfy Pro есть инструменты для массового редактирования записей, что позволяет менять автора без написания кода. Однако, если вы хотите контролировать процесс глубже, ручные методы предпочтительнее.

Основные рекомендации при смене автора

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

Выводы

Изменение автора старой записи в WordPress без плагинов — задача, решаемая несколькими способами: через SQL-запросы, PHP-функции или массовое редактирование с помощью WP_Query. Такой подход даёт полное управление процессом и позволяет избежать лишних плагинов, что положительно сказывается на производительности и безопасности сайта.

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

Как автоматизировать создание резервных копий в WordPress
27.11.2025
Как отключить автовыделение и автозагрузку изображений в WordPress
02.03.2026
Как изменить название пользовательского поля в WordPress без плагинов
22.02.2026
Как добавить автоматическое удаление старого контента в WordPress
09.01.2026
Как избежать проблем при использовании PHP 8 в WordPress
12.02.2026