Как в хуке обратиться к дополнительному полю профиля?
Есть хук, в котором нужно получить дополнительное поле профиля пользователя, ну и дальше с ним провести манипуляции. пытался получить его так
Что я делаю не так?
$id_user = $hook->getValue('extended.id_club');
и так$id_user = $hook->getValue('id_club');
выдает пустоту, хотя если обратиться к штатным полям, например$id_user = $hook->getValue('fullname');
то все работает.Что я делаю не так?
Комментарии: 5
О каких хуках речь? Что за доп? Данные какого пользователя ты хочешь получить текущего или произвольного? В целом метод getValue в FormIt возвращает поля формы, которую т отправляешь.
Разве только для formit? С fullname работает же.
Сейчас речь об UpdateProfile из пакета Login.
Данные нужны текущего пользователя.
Речь идет о синхронизации информации из профиля с ресурсом, в некоторой части совпадающей с профилем, когда этот профиль меняется.
Сейчас речь об UpdateProfile из пакета Login.
Данные нужны текущего пользователя.
Речь идет о синхронизации информации из профиля с ресурсом, в некоторой части совпадающей с профилем, когда этот профиль меняется.
не читал, но так тоже что и у меня и работает, но со стандартными полями.
получилось вот так, не через хук, но работает.
получилось вот так, не через хук, но работает.
$profile = $modx->user->getOne('Profile');
$fields = $profile->get('extended');
$id_user = $fields['id_club'];
Понятно, я сразу не обратил внимания, extended это одно поле формата json поэтому ты через хук можешь получить только его, обратиться напрямую к id_club нельзя, т.к. того поля у пользователя нет.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.