首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在节点--teaser.twig中获取user.field值

如何在节点--teaser.twig中获取user.field值
EN

Drupal用户
提问于 2018-11-04 19:51:31
回答 1查看 253关注 0票数 0

这就是我如何获得节点-完全. this的user.field值,但是这段代码不适用于节点-teaser.twig

代码语言:javascript
复制
function MYTHEME_preprocess_node(&$variables) {
    if ($node = \Drupal::routeMatch()->getParameter('node')) {
              $variables['author'] = $node->getOwner()->field_name->value;
    }
}

}

有什么想法吗?

EN

回答 1

Drupal用户

回答已采纳

发布于 2018-11-04 19:56:41

这是问题所在:

代码语言:javascript
复制
$node = \Drupal::routeMatch()->getParameter('node')

即使返回一个值,它也可能是错误的;在其自己的视图页上将节点呈现为试探者并不常见。

碰巧,对于任何视图模式,您都不需要自己加载它。节点已经在$variables中了:

代码语言:javascript
复制
function MYTHEME_preprocess_node(&$variables) {
  $variables['author'] = $variables['node']->getOwner()->field_name->value;
}

如果字段仅对某些内容类型可用,则可能需要添加对$variables['node']->getType()的进一步检查。

票数 2
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/271999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档