You are here

function twigsuggest_theme_suggestions_user in Twig Template Suggester 8

Implements hook_theme_suggestions_HOOK() for user templates.

Add template suggestions based on highest user role following the same pattern as for nodes. user--[role|uid]--[viewmode].html.twig

See also

https://www.drupal.org/node/2354645

File

./twigsuggest.module, line 205
Twig Template Suggester module hook implementations.

Code

function twigsuggest_theme_suggestions_user(array $variables) {
  $suggestions = [];
  $view_mode = $variables['elements']['#view_mode'];

  /** @var \Drupal\user\Entity\User $user */
  $user = $variables['elements']['#user'];
  $roles = $user
    ->getRoles();
  $highest_role = end($roles);
  $uid = $user
    ->id();
  $suggestions[] = 'user__' . $uid;
  $suggestions[] = 'user__' . $view_mode;
  $suggestions[] = 'user__' . $highest_role;
  $suggestions[] = 'user__' . $uid . '__' . $view_mode;
  $suggestions[] = 'user__' . $highest_role . '__' . $view_mode;
  return $suggestions;
}