Личный кабинет пользователя. Поиск компонента
Всем добрый день.
Столкнулся с необходимостью соединить пользователей в системе с их страничками на сайте.
Т.е. есть 10 пользователей, а на сайте в открытом доступе есть 10 страниц с информацией об этих пользователях: в конкретной задаче это 10 профилей психологов.
Мне нужно сделать так, чтобы каждый из психологов имел доступ к своей страничке и мог управлять на ней разрешенными для изменения полями.
Как сделать это с нуля я представляю, но может быть есть какой-то готовый компонент? Который уже способен новому пользователя присвоить конкретную страницу в его управление? Через права пользователей в админке не вариант, так как психологов около 300 человек — под каждого создавать группу прав такое себе решение.
Столкнулся с необходимостью соединить пользователей в системе с их страничками на сайте.
Т.е. есть 10 пользователей, а на сайте в открытом доступе есть 10 страниц с информацией об этих пользователях: в конкретной задаче это 10 профилей психологов.
Мне нужно сделать так, чтобы каждый из психологов имел доступ к своей страничке и мог управлять на ней разрешенными для изменения полями.
Как сделать это с нуля я представляю, но может быть есть какой-то готовый компонент? Который уже способен новому пользователя присвоить конкретную страницу в его управление? Через права пользователей в админке не вариант, так как психологов около 300 человек — под каждого создавать группу прав такое себе решение.
Комментарии: 4
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Конечно, код далек от идеального, я так и не добрался до php в чистом виде, только наверстываю. Может кто-то укажет на явные косяки и чрезмерность (стартовый каркас писал с помощью ChatGPT, потом уже все в рабочий вид превращал).
1. Вначале отсортировал в JSON файл всех сотрудников, у которых есть почты (было решено опираться на соответствие почты в карточках и у пользователя).
2. Вывел JSON с параметрами email и name (на самом деле больше параметров, но нужны для конкретной цели только эти два).
3. Создал группу для пользователей с нужными мне настройками доступа (работа ВНЕ админки).
4. Написал сниппет:
Таким образом были созданы все пользователи с именем пользователя и почтой = почты в карточках специалистов, и полным именем из карточек специалистов.
6. И в раздел «Редактирование данных» у уже авторизованного пользователя вывел следующий сниппет:
7. Ну и чанк, в который передаются данные и из которого формируется сама страница:
Собственно все. Подозреваю, что с выводом TV полей уже для редактирования можно было бы как-то лучше разобраться, но пока такой формат работает и нагрузки лишней нет. Есть проблемы с мультиполями, с ними еще работаю.