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

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

Почему важно правильно менять автора постов

Авторы записей влияют не только на отображение информации о создателе контента, но и на структуру прав доступа, SEO-настройки, а также на интеграции с внешними сервисами. Неправильное изменение автора может привести к потерям данных или нарушению логики работы сайта.

Поэтому при массовом изменении автора важно использовать корректные методы, которые сохранят все связи и метаданные.

Способы массового изменения автора постов в WordPress

1. Использование стандартных возможностей админки WordPress

Если количество записей не слишком большое, можно использовать встроенный функционал:

  1. Перейдите в раздел Записи > Все записи.
  2. Отметьте нужные записи галочками.
  3. В выпадающем списке "Массовые действия" выберите "Изменить" и нажмите "Применить".
  4. В появившемся блоке выберите нового автора и сохраните изменения.

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

2. Использование плагинов для массового изменения автора

Существуют специализированные плагины, которые позволяют быстро и безопасно менять авторов постов.

Рассмотрим пример плагина Change Post Author. Он позволяет выбрать старого автора и заменить его на нового во всех записях.

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

3. Массовое изменение автора с помощью SQL-запроса

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

UPDATE wp_posts SET post_author = NEW_AUTHOR_ID WHERE post_author = OLD_AUTHOR_ID AND post_type = 'post';

Замените NEW_AUTHOR_ID на ID пользователя, которому хотите назначить посты, а OLD_AUTHOR_ID — на ID текущего автора.

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

4. Использование PHP-кода для массового изменения автора

Лучший способ для разработчиков — написать собственный скрипт, который выполнит изменение через API WordPress. Это безопаснее и позволяет добавлять дополнительную логику по необходимости.

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

function wpbloger_change_post_author_mass( $old_author_id, $new_author_id ) {
    $args = [
        'author'        => $old_author_id,
        'post_type'     => 'post',
        'posts_per_page'=> -1,
        'fields'        => 'ids',
    ];
    $posts = get_posts( $args );

    foreach ( $posts as $post_id ) {
        wp_update_post([
            'ID'          => $post_id,
            'post_author' => $new_author_id,
        ]);
    }
}

Вызывайте эту функцию, передавая ID старого и нового автора. Она переберёт все записи старого автора и обновит их.

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

Проверка ID пользователей

Перед изменением убедитесь, что ID пользователей корректны. Получить ID можно через админку в разделе Пользователи или с помощью запроса:

SELECT ID, user_login FROM wp_users;

Учет пользовательских типов записей

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

$args = [
    'author' => $old_author_id,
    'post_type' => ['post', 'custom_post_type'],
    'posts_per_page' => -1,
    'fields' => 'ids',
];

Автоматизация через WP-CLI

Если на вашем сервере доступна консольная утилита WP-CLI, можно использовать команду для массового обновления:

wp post list --author=OLD_AUTHOR_ID --post_type=post --format=ids | xargs -d ' ' -I % wp post update % --post_author=NEW_AUTHOR_ID

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

Заключение

Массовое изменение автора постов — частая задача, которую можно решить разными способами: от стандартных инструментов в админке до программного кода и SQL-запросов. Для безопасной и гибкой работы рекомендуем использовать PHP-функции по API WordPress или проверенные плагины, например, Clearfy Pro. А для опытных пользователей отлично подойдёт WP-CLI.

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

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как безопасно удалить файлы темы в WordPress без последствий
19.12.2025
Как использовать хук pre_transient_update для тонкой очистки кеша в WordPress
12.05.2026
Как отключить автоматическую отправку писем WooCommerce при сборках заказа
17.06.2026
Как изменить метод отправки писем в WordPress: настройка SMTP и альтернативные решения
07.04.2026
Как удалить типографические ошибки в WordPress автоматически
14.03.2026
×
Сделай свой сайт крутым!

Скидка -20% на премиум плагины WordPress

Выбрать плагин сейчас ⋙