После переноса сайта на WordPress, через неделю-две на половине статей слетели авторы. Что делать?

Ссылка скопирована
1 ответ

Обновили сайт, сделали перенос всех данных, всё успешно. На сайте более 16.000 новостей. Через одну-две недели после переноса заметили, что у пользователей (Авторов/журналистов) на аккаунтах по 0 статей, и вправду, оказалось, что почти у всех статей слетели авторы. Думали, что проблемы хостинга, так как те перед нахождением проблемы полностью перезапускали нам все скрипты сайта (nginx и сам сервак в целом), но, их спецы говорят, что проблема не их.
Кто знает, в чём проблема и как её решить?

Дополнительно

Ответы:

Тут проблема комплексная и большая, с наскоку просто так не решить. В общем, как минимум нужно:
- посмотреть, как были привязаны эти посты к авторам (традиционным или каким-либо ещё способом)
- посмотреть, что в базе

Возможно, что из-за большого количества постов хостинг не вывозит запрос (мало мощности или места, такое бывает, инфа 100%).

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Павел Админов Ответ

Если после переноса сайта через неделю-две на части статей слетели авторы, причина может быть в импорте пользователей, синхронизации, плагине миграции, массовом обновлении записей или скрипте, который перезаписал post_author. В WordPress автор записи хранится в wp_posts.post_author.

Проверьте несколько записей:

SELECT ID, post_title, post_author, post_modified
FROM wp_posts
WHERE ID IN (123,456);

SELECT ID, post_title, post_author, post_modified FROM wp_posts WHERE ID IN (123,456);

Проверьте, существуют ли такие пользователи:

SELECT ID, user_login, display_name
FROM wp_users
WHERE ID IN (1,2,3);

SELECT ID, user_login, display_name FROM wp_users WHERE ID IN (1,2,3);

Частые причины:

  • при импорте пользователи не были сопоставлены;
  • плагин импорта назначил всё текущему администратору;
  • после миграции удалили пользователей;
  • скрипт массового обновления использовал wp_update_post() с неправильным post_author;
  • cron/парсер обновил записи от своего пользователя.

Если есть бэкап старой базы, можно восстановить соответствие ID записи → author ID и массово вернуть авторов. Без бэкапа — только по косвенным данным: логам, slug, email, старым экспортам.

На будущее перед миграцией всегда переносите пользователей до записей и сохраняйте таблицу соответствия старых и новых ID.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно