Добавление кастомных (настраиваемых) полей в профиль пользователя

Алексей Городков
2023-07-10 08:48
Содержание:
1. Настраиваемые поля профиля пользователя
2. Добавление настраиваемых полей профиля пользователя
     2.1. Создание категории профиля
     2.2. Создание поля профиля
3. Примеры
4. Дополнительные возможности

1. Настраиваемые поля профиля пользователя

Поле — это пространство для хранения определённой информации.
В профиле пользователя можно создать настраиваемые (кастомные) поля. Это могут быть уникальные поля для каждой отдельной системы. Пример: "Должность", "Кабинет", "Уровень мастерства" и любые другие.

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

Настраиваемые поля могут быть показаны в публичном профиле пользователя или на странице регистрации, а могут быть скрыты и использоваться только в технических или методических целях.

Например, можно фильтровать пользователей по значению определенного настраиваемого поля и проводить с этими пользователями дальнейшие действия (запись на курс, присоединение к группам, рассылка уведомлений и т.д.).

Некоторые примеры применения настраиваемых полей профиля можно посмотреть в статьях:

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

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

Все кастомные поля профиля находятся в категориях профиля. Категориями можно управлять. Категория, устанавливаемая по умолчанию для кастомных полей - "Другие поля".

Каждое поле содержит ряд параметров, основным из которых является тип поля (Текстовое поле, Выбор из списка, Дата/Время и др.). Тип задается при создании поля и в дальнейшем не может быть изменен.

Пример редактирования настраиваемых полей полей в профиле пользователя по категориям:

Рис. 1.2. Пример заполнения (редактирования) настраиваемых полей полей в профиле пользователя.

2. Добавление настраиваемых полей профиля пользователя требуются права администратора

Важно! Действия в данной инструкции с меткой требуются права администратора можно выполнить только при наличии доступа "Полный Администратор". По умолчанию мы предоставляем доступ "Диспетчер-Администратор". Для изменения глобальных конфигураций мы рекомендуем выбрать набор требуемых опций по данной инструкции и обратиться в техническую поддержку с заявкой на конфигурирование системы. Подробнее - в статье "Полный административный доступ".

"Настраиваемые поля" добавляются через интерфейс "Поля профиля пользователя". Для этого администратору нужно перейти: блок "Настройки" -► Администрирование -► Пользователи -► Учетные записи -► Поля профиля пользователя.
/user/profile/index.php

Рис. 2. Настройки -> Поля профиля пользователя (Настраиваемые поля).

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

2.1. Создание категории профиля

Категории профиля позволяют создать контейнеры для полей, которые будут иметь свои заголовки и смогут отображаться в профиле пользователя единым блоком. Удобны для группировки полей.

Рис. 2.1.1. Заполнение настраиваемых полей профиля пользователя по категориям.

Для создания новой категории профиля нужно нажать внизу страницы на соответствующую кнопку:

Рис. 2.1.2. Переход к созданию категории профиля.

Далее ввести ее название и сохранить результат:

Рис. 2.1.3. Создание новой категории профиля.

Интерфейс управления категориями прост и интуитивно понятен. Пока в категории нет полей, она будет отображаться в интерфейсе с предупреждением ("Поля для аттестации"):

Рис. 2.1.4. Интерфейс управления категориями профиля.

2.2. Создание поля профиля

При создании нового поля профиля первоначально нужно выбрать тип поля:

Рис. 2.2. Создание поля профиля. Выбор типа поля.

2.2.1. Тип поля

  • Conditional field (Зависимые поля). Позволяет создавать более функциональный вариант поля "Выбор из списка" (см.ниже), в котором можно настроить скрытие или показ других кастомных полей профиля на основе значения, выбранного для этого поля. Например, это позволяет создавать динамические страницы регистрации / профиля. Также можно настроить некоторые другие поля как обязательные в зависимости от выбранного значения для этого поля.
    Как это работает: есть анкета или форма, которую должен заполнить пользователь. Поле позволяет создать условия для вызова и показа определенных полей. В зависимости от того, что выбирает пользователь ему будут показываться заранее подготовленные поля. Это может быть полезно, если форма получается большая или нужно спрятать "лишние" поля.
    Это также можно использовать, когда для разных пользователей (например, из разных отделов) отображаются предварительно настроенные варианты формы с определенным (различающимся) набором полей профиля в зависимости от специализации пользователей (отдела).

  • Выбор из списка. Варианты выбора будут представлены в виде раскрывающегося списка, из которого пользователь сможет выбрать только один ответ.

  • Дата/время. Позволяет пользователям вводить дату/время.

  • Область ввода текста. Позволяет пользователям вводить большой объем текста через встроенный редактор (Atto) с возможностью форматирования и добавлением изображений.

  • Переключатель (Radio buttons). Позволяет пользователю выбрать один вариант из двух с помощью выставления "галочки".

  • Текстовое поле. Пользователи могут ввести текст. Для более пространного текста или текста с форматированием (например, с различными уровнями заголовков, маркированным списком и т.п.) следует использовать поле "Область ввода текста".

2.2.2. Секция настроек "Общие настройки полей"

После выбора типа поля открывается окно настроек поля, которое содержит секцию "Общие настройки" (эта секция настроек одинакова для всех типов поля) и секцию "Особые параметры" (эта секция настроек индивидуальна для каждого типа поля).

  • Краткое название (должно быть уникальным). Значение задается латинскими буквами в нижнем регистре, могут применяться цифры и символ "_". Краткое название используется в том числе другими плагинами для идентификации поля. Помимо уникальности рекомендуется делать название кратким и в то же время понятным.
  • Название. Название поля.
  • Описание поля. Здесь можно ввести описание поля.
  • Это обязательное поле? Если выбрать "Да", пользователь обязательно должен будет заполнить это поле.
  • Это поле заблокировано? Если выбрать "Да", пользователь не сможет изменить значение поля.
  • Значения должны быть уникальными? Если выбрать "Да", значение поля должно быть уникальным.
  • Показывать на странице регистрации? Если выбрать "Да", поле будет отображаться на странице регистрации.
  • Кому видно это поле? Значения: Не видно никому / Видно всем / Видно пользователю. Определяет тех, кто сможет видеть значение данного поля.
  • Категория. Категория полей, в которую будет помещено данное поле.

2.2.3. Секция настроек "Особые параметры" (специфические настройки полей)

Conditional field

Варианты выбора (каждый с новой строки) - Укажите параметры меню, по одному параметру в каждой строке. Далее можно будет указать, какие поля должны быть скрыты или обязательны при выборе каждого параметра. 

Предупреждение! Несколько условных полей могут вызвать конфликты. Скрытые обязательные поля могут помешать отправке формы. Чтобы предотвратить это, убедитесь, что пользователи не попадают в ситуацию, когда поле требуется одним условным полем и одновременно скрывается другим условным полем.
Выбор из списка
  • Варианты выбора (каждый с новой строки). Значения поля для выбора.
  • Значение по умолчанию. Значение, которое будет выставлено по умолчанию. Должно совпадать с одним из вариантов выбора (!).
Дата/время
  • Наименьший год. Год, который может быть указан как минимальное значение.
  • Наибольший год. Год, который может быть указан как максимальное значение.
  • Включать время? Пользователь в поле может установить не только дату, но и время.
Область ввода текста
  • Значение по умолчанию. Здесь может быть введен форматированный тест (с помощью встроенного редактора), который может включать изображения и другие элементы.
Переключатель
  • Отмечено по умолчанию. При установке опции в "Да", значение поля изначально будет установлено в 1.
Примечание.
При использовании поля типа "Переключатель" для записи в него значений (например, с помощью элемента "Логика курса") нужно использовать значения 0 или 1.
Текстовое поле
  • Значение по умолчанию. Значение, которое будет выставлено по умолчанию.
  • Отображаемый размер. Размер поля, который будет отображаться пользователям. Ширина текстового поля, которое определяется числом символов моноширинного шрифта.
  • Максимальная длина. Опция устанавливает максимальное число символов, которое может быть введено пользователем в текстовом поле.
  • Это поле пароля? Определяет, является ли значение поля паролем. При установке "Да" значения вводимых пользователем символов будут скрываться точками. Рекомендуется при использовании поля как пароля установить настройку "Кому видно это поле" в значение "Видно пользователю".
  • Ссылка. Для преобразования текста из поля в ссылку, в данное поле нужно ввести URL, содержащий $$, где $$ будут заменены на текст из поля. Например, для преобразования Twitter ID в ссылку, введите http://twitter.com/$$.
  • Открывать ссылку. В этом поле выбирается, каким способом будет открываться отображаемое значение поля с ссылкой при клике на нее.

3. Примеры

Задача
Сделать так, чтобы при выборе определенного пункта в одной категории поля профиля пользователю открывался определенный набор других полей для заполнения, а если он выберет другое поле, то ему выпадет другой список полей для заполнения.
Решение
Отображать различные поля по выбору другого поля можно. Для этого нужно:
1. Добавить дополнительные поля профиля, набор которых будет отличаться для разных пользователей. Скрывать и показывать таким образом можно только созданные дополнительные поля профиля. Для удобства можно предварительно создать отдельную категорию для таких полей.
2. Добавить новое поле типа "conditional field", это и будет поле, по которому будет определяться набор следующих полей.
В настройках этого поля:
- необходимо указать варианты выбора, каждый вариант с новой строки;
- далее нужно нажать на кнопку "Configure conditionals" и, в открывшемся окне, настроить отображение полей по условиям. Напротив каждого из вариантов выбора можно для каждого из дополнительных полей установить галочки "Required" (сделать поле обязательным к заполнению при выборе конкретного варианта) и "Hidden" (чтобы скрыть поле при выборе конкретного варианта).
Если для поля и варианта не установлены галочки, при выборе этого варианта, поле будет видно, но не будет обязательным.

4. Дополнительные возможности

Для добавления файлов в поля профиля пользователя есть плагин moodle profilefield_file. в версии moodle 3.5 он официально не поддерживается. Для установки плагина с помощью технической поддержки нужно создать заявку в категории: "Гарантийная техподдержка/ Установка стороннего плагина".

Теги: администрирование, регистрация
Рейтинг ответа: 4 (1 оценка)

Комментарии запрещены