Настройка дополнительных полей учетной записи

В предыдущем уроке мы рассмотрели раздел настроек учетной записи, а в этом уроке мы рассмотрим разделы Управление полями и Управление отображением с помощью которых можно добавить в учетную запись новые поля и настроить их отображение.

Для перехода на форму редактирования и добавления полей учетной записи нажимаем на вкладку Управление полями раздела Настройки учетной записи как показано на картинке ниже:

Ссылка на Управление полями

Форма Управление полями учетной записи очень похожа на аналогичную форму для типа материалов:

Страница Управление полями

На ней уже присутствуют два поля:

  • Имя пользователя и пароль - стандартные поля которые присутствуют на форме регистрации и в форме редактирования учетной записи, редактировать их нельзя.
  • Часовой пояс - поле позволяющее пользователю выбирать его часовой пояс, доступно только в том случае если отмечена соответствующая настройка на форме региональных настроек (эту форму мы рассмотрим в других уроках).

Все возможные типы полей тут такие же как и для типа материалов. Для примера добавим пару новых полей: Пол и Я согласен с правилами сайта.

Для начала добавим поле Пол. Заполняем форму добавления поля:

Добавление поля Пол

Далее заполняем Список допустимых значений для этого поля.

Варианты значения поля Пол

Форма настроек поля ничем не отличается от стандартной, за исключением одной важной настройки Показывать на форме регистрации пользователей, этот флажок определяет нужно ли показывать это поле на форме регистрации. Так как поле Пол не является важным то лучше не отображать его на форме регистрации чтобы не нагружать пользователя лишними действиями во время регистрации, он сможет заполнить эту информацию уже после регистрации при редактировании своей учетной записи.

Настройки поля Пол

Нажимаем кнопку Сохранить настройки. Поле Пол создано.

Теперь создадим следующее поле Я согласен с правилами сайта которое будет являться примером поля которое необходимо заполнить именно при регистрации, так как мы не можем позволить зарегистрироваться пользователю не согласному с нашими правилами.

Для начала заполним форму добавления нового поля:

Добавление поля Я согласен с правилами сайта

Следующие настройки можно оставить незаполненными, в этом случае будут использоваться значения по умолчанию 1 и 0, нас это устраивает.

Настройки поля Я согласен с правилами сайта

Далее поставим галочку Обязательное поле так как мы не можем позволить пользователю оставить это поле незаполненным, при этом галочка Показывать это поле на форме регистрации пользователей отмечается автоматически потому что все обязательные поля должны быть заполнены при регистрации.

Настройки поля Я согласен с правилами сайта

Нажимаем кнопку Сохранить настройки.

Ссылка на раздел Управление отображением

Теперь когда оба наших дополнительных поля созданные переходим на форму редактирования отображения этих полей.

Заполним эту форму как показано на картинке ниже:

  • История - это поле присутствует на странице учетной записи по умолчанию, оно показывает сколько прошло времени с момента регистрации пользователя, установим его в самый верх.
  • Пол - это поле мы будем отображать на странице учетной записи под полем История.
  • Я согласен с правилами сайта - это поле мы скроем, так как нет смысла его отображать, оно используется только для того чтобы пользователь согласился с правилами перед регистрацией.

Настройка отображения полей учетной записи

После изменений не забываем нажать кнопку Сохранить для того чтобы изменения вступили в силу.

На этом мы закончим этот урок, а в следующем уроке мы рассмотрим процесс регистрации, авторизации и редактирования учетной записи пользователя.

Поделись с друзьями:

Комментарии

Кто-нибудь может подсказать, можно ли обойтись без полей учетных записей типа "Я согласен с правилами сайта"? Они ведь все у всех одинаковые. То есть, можно ли сделать так, чтобы это поле было во время регистрации, но не хранилось потом в БД?

Можно использовать модуль Terms of Use

Спасибо.

Не могли бы вы подсказать, как быть, если мне необходимо делать, если я хочу, чтобы пользователь заполнял поле, которая является записью в таблице? Допустим, я создал таблицу валют (пусть будет, cmn_currencies) и хочу, чтобы он при регистрации или после нее указал какую-нибудь из таблицы. Спасибо!

Не понимаю вопрос. Что и зачем должно попадать в таблицу cmn_currencies при регистрации?

Прощу прощения. Есть таблица в БД MySQL cmn_currencies. Мне бы хотелось организовать поле в настройках учетной записи пользователя, которое соответствовало бы записи в этой таблице. Иначе говоря, пользователь при регистрации выбирает одно значение из этой таблицы.

Не у верен что для этого существует решение из коробки. Надо писать модуль.