MODX - Вывод чанка в зависимости от группы пользователй

Александр
Александр
3.1K
7
Вопрос вот в чем: на сайте 3 группы пользователей(аноним, юзер1, юзер2), требуется для каждой группы вывести свой чанк с меню, т.к. оно имеет различие.
[[!+modx.user.id:is=`0`:then=`[[$menu]]`:else=`[[$menuspec]]`]]
Пытался это переделать, дополнить не получилось, помогите пожалуйста!

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

  1. Александр
    Александр
    20.10.2016, 14:52
    Вместе с
    [[!+modx.user.id:is=`0`:then=
    все замечательно работает. Огромное Спасибо Вам, отличный сайт.
  2. Александр
    Александр
    16.10.2016, 14:20
    Спасибо, буду пробовать!
  3. Константин
    Константин
    16.10.2016, 13:33
    спасибо. вчера разобрался)
  4. Александр Мальцев
    Александр Мальцев
    16.10.2016, 12:30
    Это необходимо делать через сниппет.
    Т.е. создаёте сниппет (например, showContent) со следующим содержимым:
    // получить текущего пользователя
    $user = $modx->user;
    // получить id текущего пользователя
    $idUser = $user->get('id');
    // если у пользователя id больше 0, то
    if ($idUser>0) {
      // проверяем, принадлежит ли пользователь к группе Users или Managers,
      // если принадлежит, то выводим соответствующий чанк.
      // Т.е. tplForUsers для группы Users, а tplForManagers для Managers
      if($user->isMember('Users')) {
        return $modx->getChunk('tplForUsers');
      } elseif($user->isMember('Managers')) {
        return $modx->getChunk('tplForManagers');
      }
    }
    
    После этого в необходимых шаблонах вызываете этот сниппет:
    [[!showContent]]
    
    Ну и конечно необходимо создать чанки tplForUsers и tplForManagers.
  5. Константин
    Константин
    15.10.2016, 18:27
    по крайней мере к кому с этим вопросом за помощью обратиться.
  6. Константин
    Константин
    15.10.2016, 18:25
    Добрый день! Кто может подсказать как сделать в бутстраповском меню такую штуку:
    itchief.ru/assets/uploadify/2/2/0/220de9a368242d126e3a2e8a09ae0958.png а то голову сломал уже
    1. Александр Мальцев
      Александр Мальцев
      16.10.2016, 12:41
      Создать соответствующие блоки и добавить их в меню.