web-dev-qa-db-fra.com

Connectez-vous au nom d'utilisateur de l'utilisateur sous la forme twig variable

Existe-t-il un moyen d'obtenir le nom d'utilisateur de l'utilisateur actuellement connecté en tant que variable à utiliser dans n'importe quel modèle twig?

4
cheesetriple

Il faudrait en cibler un spécifique. Tous les modèles twig n'est pas possible à cause de la mise en cache. De nombreux éléments de page ne sont pas reconstruits à chaque demande et ils affichent le mauvais utilisateur.

Et si vous essayez de supprimer la mise en cache de tous les éléments, votre site serait très lent.

Si vous ajoutez ceci à un modèle twig spécifique), vous pouvez ajuster le contexte de cache de cet élément de rendu:

function MYTHEME_preprocess_HOOK(&$variables) {
  $variables['currentusername'] = \Drupal::currentUser()->getUsername();
  $variables['#cache']['contexts'][] = 'user';
}

Où HOOK est votre type de modèle.

7
4k4