Только начал с Друпалом. И интересует вопрос как сделать свою форму регистрации. Можно конечно добавить полей на стандартную форму, но мне нужно иметь разные формы регистрации для разных видов пользователей. Грубо говоря физ. лицо должно вводить ФИО, а юр. лицо наименование и ИНН. Хочется что бы пользователь выбрал свой тип на форме регисрации по получил набор полей под себя.
Как нужно создать модуль под такое? Может кто-нибудь примером поделится?
Добавьте все поля в профиль юзера и с помощью модуля Conditional Fields скрывайте ненужные при выборе типа регистрации. Можно еще в кастомном модуле добавить еще один сабмит на форму регистрации через hook_form_alter() и давать им разные роли в зависимости от выбранного типа.
dotrem: Conditional Fields надо использовать с дефолтной формой регистрации Drupal.
Форма же взятая из примера будет доступна по адресу registration, если Вы включили модуль и заменили mymodule на название своего модуля. Если вы хотите чтоб она отображалась вместо стандартной формы на странице user/register, Вам нужно использовать hook_menu_alter() и заменить страницу user/register на свою форму. Только не понимаю чем Вам поможет эта форма, если Вам все равно надо менять поля в зависимости от выбранного типа, то в случае кастомной формы вам придется использовать Form API #states и прописывать условия самому. Или я не так понял, что вы хотите получить в итоге.
afi13: Дело в том что я совсем до этого не работал с друпалом. И хотел для начала хоть какую-то кастомную форму сделать, а потом уже напилить нужно на нее.
Такой еще вопрос: если использовать Conditional Fields то модуль Profile2 не нужен для создания профилей для разных типов пользователей?
dotrem: Модуль Conditional Fields только отображает и скрывает поля в зависимости от значений указанных в других полях. Вы выбираете различные условия, для указанных отображения полей. То есть например, если Вы в поле указано значение "физ. лицо", то отображать в форме один набор полей, а если "юр. лицо", то другой. Именно для этого я его Вам советовал, никакого отношения к управлению профилями пользователей он не имеет.