如何在TWIG模型中显示当前用户的图片?

时间:2019-04-08 22:22:15

标签: templates drupal twig drupal-8

我为Drupal 8网站的主页制作了TWIG模板。

page--front.html.twig

我要在此页面上显示当前用户的图片。

如何在TWIG模型中显示当前用户的图片?

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码获取用户图像:

$user = \Drupal\user\Entity\User::load(\Drupal::currentUser()->id());

    if (!$user->user_picture->isEmpty()) {
      $displayImg = file_create_url($user->user_picture->entity->getFileUri());
    }else{
      $displayImg = '';    
    } 

然后将其作为变量传递给细枝,检查其是否为空,并取决于某些img标签中的打印内容。

https://www.drupal.org/forum/support/post-installation/2018-09-28/drupal-8-how-can-i-get-the-profile-picture-of-a-user

更新

要获取图片样式的网址,您可以执行以下操作:

$style = \Drupal::entityTypeManager()->getStorage('image_style')->load('thumbnail');
$url = $style->buildUrl($displayImg);

基于:https://www.webomelette.com/how-render-your-images-image-styles-drupal-8

并且您应该从主页控制器分配twig变量。