我正在研究Drupal 8,
我有一个名为Home page的内容类型,其中包含内容字段和一个类型为Entity Reference的字段,该字段链接到分类项目。
在page.html.twig中,我想获得此分类项的值。
我尝试了很多但没有任何作用。
读取比我需要执行此代码:
{{node.field_home_page_slider_type}}
但它给了我一个白页。我试过kint,我有很多财产,但我没有找到如何获得我的领域的价值。
解决方案是什么?
答案 0 :(得分:0)
如果您仍在努力研究树枝,请在your_theme.theme
中准备好您需要的东西。您可以在
function HOOK_preprocess_page(&$variables) {
if (!array_key_exists('node', $variables))
return;
$node = $variables['node'];
// ...
}
在这里,您可以准备数据并将其提供给这样的小枝:
$variables['foo'] = 'bar';
在Twig中你可以这样做:
{{ foo }}
答案 1 :(得分:0)
我创建的唯一方法是预处理页面的节点以获取分类法字段的内容。
这是我的代码示例
$node = \Drupal::routeMatch()->getParameter('node');
$field = 'title';
$index = 0;
if($node){
$nodeArray = $node->toArray();
if (isset($nodeArray[$field][$index]['value'])) {
$value = $nodeArray[$field][$index]['value'];
}
if(isset($nodeArray['field_home_page_slider_type'])){
$id_slider_type = $nodeArray['field_home_page_slider_type'][0]['target_id'];
}
}