2017-10-27 5 views

答えて

0

使用HOOK機能hook_preprocess_page は、あなたのテーマでコードを書いているならば、モジュール内であれば、あなたの.themeファイル にこのコードを書く.moduleファイル内

function themename_preprocess_page(&$variables) { 
    global $user;// current user object 
    $variables['customUserName'] = $user->getUsername(); 

} 

変更THEMENAMEであればモジュールは、あなたの小枝テンプレートにモジュール名
と交換してください、あなたは私たちがyのように、ページテンプレートをオーバーライドしている。この

{{ customUserName }} 

のように、この変数を出力しますあなたは、これはあなたのrequirment Code.riderの答えが正しいか THANKS

0

を満たす

function themename_preprocess_node(){} 

希望にリネーム機能ノードテンプレートにこの変数が必要な場合、当社は、すべてのあなたのページのテンプレート でこの変数を取得することができますしかし、Drupal 8では、\ Drupal :: currentUser()を使用して現在のユーザーを取得する方がよいでしょう。ここに私のコードmytheme.themeからです:

function mytheme_preprocess_page(&$variables) { 
    $user = \Drupal::currentUser(); 
    if($user) 
    { 
    $username = \Drupal\user\Entity\User::load($user->id()); 
    $variables['username'] = $username->getUsername(); 
    } 
    return $variables; 
} 
関連する問題