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

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

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

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

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

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

 

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

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

 

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

5 428 комментариев

  1. Online poker comes with many advantages. Poker online
    is simple to play with no waiting lists or second-hand smoking.
    You can also play the variety of games. You can also play
    your favorite game at home.

    My blog — Live (Leeleeatpearl.Com)

  2. I think this is one of the most significant info for me.
    And i’m glad reading your article. But want to remark on some general things, The website style is
    great, the articles is really nice : D. Good job, cheers

  3. If you’re looking for a CDN provider you have
    the option of choosing from several choices.
    These include cloud-based Content delivery network cdn (ourclassified.net) delivery networks, Akamai, StackPath, and
    Cloudflare. Find the one that is most suitable for you.

  4. Paxil, which is additionally acknowledged beneath the names of Paroxetine, Seroxat or Aropax, is a medication that belongs within the serotonin reuptake inhibitors category of medication. It acts by balancing the chemicals in your brain, preventing and serving to take away such conditions as depression, anxiety or obsessive-compulsive behavior. It comes beneath the form of tablets or suspension.
    paxil without insurance

  5. Taking Plavix (clopidogrel) might cause any bleeding. therefore, you should get advice from your doctor to change your dosage or stop taking this medicine.
    buy plavix

  6. There are a variety of alternative products.
    Some are interchangeable, while others are very alike, and some are very similar.

    To know which type of alternative product is right for
    you, go through this article.

    My web site — Altox

  7. Alternative service is a term that refers to the process of serving in a non-military role instead of conscription in the military.
    It is also referred to by the names civilian service substitute service and non-military.

    Feel free to visit my web blog :: altox

  8. Before developing an alternative project design, the project’s management team
    must be aware of the main factors associated with each alternative.

    Also visit my web blog :: altox

  9. Comparative evaluation and value representation can aid you in making an informed decision. These concepts will
    help you make your choice. Learn more about pricing and how to judge the different options for a product.

    My web site alternatives

  10. Theere have been $1 million winners in California, South Carolina and Tennessee who correctly matched
    alll ffive whitte ball numbers but missed thee Powerball.

    Feel free to surrf to my webpage :: Go here

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

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