Настраиваем и используем модуль profile2, Drupal 7

Поговорим о модуле profile2, Drupal 7.

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

Установка

Страница проекта модуля — drupal.org/project/profile2. Качаем последнюю версию, добавляем в свой проект (например, в sites/all/modules/). Я также устанавливаю модуль profile2_regpath, чтобы получить отдельные страницы регистрации.

На странице модулей drupal мы получаем примерно такую картинку:

profile2-modules

Настройка

Настройки есть только у модуля Profile2, где мы создаём и настраиваем типы профилей [admin/structure/profiles]. Я создал целых три профиля — для организации (organization), частного лица (private person) и ИП (self-employed). У каждого свой набор полей.

profile2-cusrom-profiles

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

profile2-label

Название и машинное имя. От последнего будут зависеть генерируемые пути к страницам отображения и редактирования профилей. В данном примере пути просмотра и редактирования будут выглядеть так:

profile-org/1/view — просмотр (view) профиля организации (org) пользователя с user_id = 1
profile-org/1/edit — редактирование (edit) профиля организации (org) пользователя с user_id = 1

Пара чекбоксов позволяет сделать общие настройки профиля.

profile2-checks

Первый из них решает показывать ли поля данного профиля на всех формах регистрации (что то вроде общего для всех профиля), второй чекбокс позволяет выделить редактирование и просмотр полей данного типа профиля на отдельные страницы, убирая их с базовой страницы профиля (как в примерах выше — profile-org/1/view  и profile-org/1/edit).

Включаем опции модуля Profile2 registration path.

profile2-regpath-settings

Галочка разворачивает целый набор настроек. Большинство из них не требует пояснения — это настаиваемые заголовки страниц, текст сообщения о регистрации и т.п.

Здесь же настраивается путь к форме регистрации данного типа профиля.

profile2-regpath-path

А также можно подключить роль данного пользователя после регистрации, т.е. связать тип профиля и роли пользователей на сайте.

profile2-regpath-assign-role

У меня была только одна роль — администратор, она и показана в «списке». Советую для каждого профиля создать и ассоциировать свою роль [admin/people/permissions/roles]. Тогда можно будет ограничить редактирование профилей только тем профилем, редактирование которого разрешено в настройках выбранной роли пользователя. Т.е. настройки разрешений [admin/people/permissions] могут выглядеть вот так

profile2-permissions

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

Немного программирования

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

Мало букафф? Читайте есчо !

Отключаем кеш на нужных страницах в Drupal

Март 7, 2014 г.

Кеширование анонимов в drupal мера сколь необходимая, столь и неудобная. Большинство страниц на сайте статичны, и использование кеша для них оправдано. Включение его может нарушить работу некоторых динамических страниц, например, страниц, где используются ...

Читать

Вывод нужного уровня подменю в Drupal

Сентябрь 17, 2010 г.

Система меню в друпале сделана правильно и в большинстве случаев не требует установки каких то дополнительных модулей, чтобы получить тот результат, который требуется. И в данной статье мы не будем как то дополнять саму систему меню drupal-а. В тоже ...

Читать

Ошибка поля Autocomplete - found no valid option

Октябрь 28, 2014 г.

У меня эта ошибка всплыла для поля с автозаполнением, когда список значений генерировался из PHP кода. Занималась генерацией списка значений вот такая функция: [crayon-6a13013b5b68b656406065/] Грабли обнаружились в случаях, когда поле title содержал ...

Читать

Импортируем изображения через wysiwyg

Декабрь 27, 2014 г.

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

Читать
 

Комментарии к «Настраиваем и используем модуль profile2, Drupal 7»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: