Небольшая заметка о том какие у пользователей есть поля и как вывести информацию об авторизованном пользователе фронтенде.
Стандартные поля пользователей
Поле | Название |
---|---|
id | id пользователя |
username | Имя пользователя |
fullname | Полное имя |
Адрес электронной почты | |
phone | Номер телефона |
mobilephone | Номер мобильного телефона |
fax | Факс |
address | Адрес |
city | Город |
state | Регион / область |
zip | Почтовый индекс |
country | Страна |
website | Сайт |
photo | Фотография пользователя |
dob | Дата рождения |
gender | Пол |
active | Активный |
blocked | Заблокирован |
sudo | Неограниченные права |
blockeduntil | Заблокирован до |
blockedafter | Заблокирован после |
logincount | Количество входов |
lastlogin | Последний вход |
failedlogincount | Ошибки входа |
createdon | Дата создания пользователя |
primary_group | Группа пользователей |
Вывод полей пользователей во фронтенде
Когда пользователь входит в интерфейс вашего сайта, его имя пользователя и идентификатор могут быть доступны с помощью следующих плейсхолдеров:
[[+modx.user.name_polya]]
Примеры использования
К примеру нам нужно вывести информацию о авторе публикации статьи: его имя, фото и т.д. Сделать это можно так:
[[*createdby:userinfo=`fullname`]]
[[*createdby:userinfo=`photo`]]
{$_modx->resource.createdby | user : 'fullname'}
{$_modx->resource.createdby | user : 'photo'}
Следующие плейсхолдеры выводят информацию пользователю, который произвел вход на сайт, например при помощи компонентов «uLogin», «HybridAuth»…:
Имя пользователя: [[+modx.user.id:userinfo=`username`]]
Полное имя пользователя: [[+modx.user.id:userinfo=`fullname`]]
Ссылка на фото в соц. сетях: [[+modx.user.id:userinfo=`photo`]]
Чтобы проверить, авторизован посетитель или нет, можно использовать сниппет «if», в котором применять следующие плейсхолдеры:
Возвращает true, если посетитель авторизовался:
[[+modx.user.id:isloggedin]]
Возвращает true, если посетитель НЕ авторизовался:
[[+modx.user.id:isnotloggedin]]
Соответственно, если требуется совершить какое-то действие после проверки, то сравниваем возвращаемое значение с единицей и производим то или иное действие.
[[+modx.user.id:isloggedin:is=`1`:then=`Авторизованы`:else=`Не авторизованы`]]
Ну и на последок разберем как вывести ресурсы определенного пользователя Modx revo:
[[pdoResources?
&parents=`0`
&tpl=`resourcesTpl`
&where=`{ "createdby":"1" }`
]]