Drupal 7: Разные профили пользователей для разных ролей

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

Итак, задача стоит следующая: на сайте www.carhelpinfo.ru есть две роли: обычный зарегистрированный пользователь и магазин.  В профиле магазина находится информация о его месторасположении (поле с Google Maps), краткое описание магазина (текстовое поле) и название магазина.

Необходимо всех регистрирующихся по умолчанию считать обычными зарегистрированными пользователями. Роль магазина присваивает администратор. 

К сожалению, я не нашел, как штатными средствами Drupal 7 сделать разные профили для разных ролей, и в форме регистрации всем подряд предлагалось указать название и описание магазина, а так же его местоположение. Помог мне в решении этой проблемы доп. модуль Profile 2

После установки этого модуля в разделе "Структура" появится пункт "Тип профиля" (см скриншот)

 

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

Теперь, чтобы при нажатии кнопки "регистрация" пользователю предлагалось заполнить "Основной профиль", нужно лишь установить флажок "Show during user account registration.":

 

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

60 комментариев

  1. Manyy thanks for being our mentor on this theme. I actually enjoyed your current article very much and most of all enjoyed how
    yyou really handled the issues I considered to be controversial.
    You are always quite kind towards readers mucxh like me and assist me to in myy life.

    Thank you.

  2. I have been exploring for a little for any high quality articles or weblog posts
    in this sort of house . Exploring in Yahoo I at last stumbled upon this web
    site. Studying this info So i’m happy to express that I
    have an incredibly good uncanny feeling I discovered exactly what I needed.
    I so much for sure will make certain to do not forget this web site and
    give it a look regularly.

  3. I am actually thankful to the owner of this website who has shared this wonderful paragraph at here.

  4. Hello colleagues, how is everything, and what you desire to say concerning this article, in my view its actually remarkable for me.

  5. There aree definitely a variety of details like that to take int consideration. That iis
    a nice point to convey up. I supply the ideas abbove as normal inspiration however clearly there are
    questions like the one you carry up the plafe crucial factor can be working iin sincere good faith.

    I don?t know if greatest practices have emerged round issues like that,
    buut I’m positive that your job is clearly identified as a fair game.

    Each giels and boys really feel the influence of only a second’s
    pleasure,for the rest oof their lives.

  6. My partner and I absolutely love your blog and find almost all
    of your post’s to be exactly what I’m looking for.
    can you offer guest writers to write content for you?
    I wouldn’t mind writing a post or elaborating on many of the
    subjects you write about here. Again, awesome weblog!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *