Как показать в профиле пользователя его роли

чт, 22.04.2010 11:56 :: olk

Во многих случаях, такие вопросы достаточно просто решаются через темизацию, а конкретно через файл template.php и/или файл шаблона. В нашем случае наиболее удобным местом, где можно «подправить» вывод профиля пользователя является функция preprocess_user_profile.

  1. function имя_вашей_темы_preprocess_user_profile(&$variables){
  2.   $items = array();
  3.   foreach ($variables['account']->roles as $key => $value) {
  4.   // получаем в массив список ролей пользователя
  5.   // (кроме стандартных анонимуса и авторизованного пользователя)
  6.    if ($key > 2) {
  7.     $items[] = $value;
  8.    }
  9.   }
  10.   // если роли присутствуют, то добавляем их в вывод
  11.   if (count($items)) {
  12.   $variables['user_profile'] .= '<h3>Роли пользователя</h3><dl class="user-roles"><dd>' . theme('item_list',$items) . '</dd></dl>';
  13.   }
  14.  
  15. }
В данном примере вывод списка ролей будет осуществлен в конце профиля. Можно вывести и в начале, например так:
  1.   $variables['user_profile'] = '<h3>Роли пользователя</h3><dl class="user-roles"><dd>' . theme('item_list',$items) . '</dd></dl>' .   $variables['user_profile'];
Добавить комментарий
« Добавить комментарий
» Добавить комментарий