Описываю для компонента k2 но все это верно и для других компонентов. В моем случае необходимо было перенести данные из компонента к2 с одного сайта на другой на котором только что поставили такой же компонент. Естественно пользователи (superuser) были разные.
В результате стала появляться ошибка.
JUser: :_load: Unable to load user with ID: 942
JUser: :_load: Unable to load user with ID: 150
Что понадобится для решения данной проблемы.
Доступ к php my admin (скрипт управления базами данных) Есть практически на каждом хостинге либо какой-нибудь другой который позволит работать с базой данных. (в особо тяжелых случаях тупоумия
попросите support хостинга сделать вам резервную копию базы данных)
1 И так если у Вас есть доступ к php my admin (скрипт управления базами данных).
Выбираем базу данных с которой работает Ваш сайт.
Ищем в ней таблицу xxxx_k2_items, где xxxx - префикс таблиц (Задается на этапе установки Joomla можно посмотреть в файле configuration.php он лежит в корне сайта ищите переменную $dbprefix, либо в админке Вашего сайта: Общие настройки --> настройки сервера --> Префикс таблиц базы данных у каждого префикс будет свой)
Дальше открываем Вашу таблицу xxxx_k2_items она содержит все материалы которые созданы с помощью компонента K2
Нас интересуют столбцы created_by и checked_out в них меняем цифры на ID своего superuser (id можно посмотреть в админке своего сайта - Менеджер пользователей, самый правый пункт).
Сохраняем таблицу и вуаля ошибка исчезает.
2 если нет доступа к php my admin, или боитесь им пользоваться, или не умеете. Просите support вашего хостинга сделать резервную копию базы данных и прислать ее Вам или выложить куда-нибудь от куда вы сможете ее скачать. (Обычно это будет файл с расширением sql либо txt kb бо архив с одним из таких файлов)
Получив файл делаем его копию на случай кривых рук.
Открываем файл блокнотом (я советую использовать
Notepad++ он бесплатный и гораздо удобнее взять можно здесь
http://notepad-plus-plus.org/download/v6.4.5.html)
Далее по схеме представленной выше. Ищем таблицу и меняем цифры.
Если в компоненте К2 есть комментарии которые оставил пользователь с ID которого теперь нету необходимо проделать ту же операцию для таблицы xxxx_k2_comments
Описанная процедура позволяет подменить ID пользователя для любого компонента CMS Joomla
PS не забываем делать резервные копии ВСЕГДА!
Может такое случиться, что записей для исправления очень много. тогда можно использовать sql запрос (если есть доступ к php my admin) вида:
UPDATE `test25`.`xxxx_k2_items` SET `created_by` = '364',
`checked_out` = '364' WHERE `xxx_k2_items`.`id` between 1 and 30;
Где xxxx -префикс таблицы вашей базы данных
364 - ID Вашего superuser (354 ввел для примера у Вас он будет свой)
between 1 and 30; - интервал в строках в моем случае с 1 по 30.
Либо используйте Авто замену в Notepsd ++ но аккуратно не замените чего-нибудь лишнего.
PS не забываем делать резервные копии ВСЕГДА!