Drupal 8 /如果当前节点相同,我如何在视图列表中添加额外的类/突出显示'查看项目'?

问题描述:

我在视图中显示了一个玩笑的列表。 此视图包含在此内容类型中。 因此它显示在此内容类型的每个页面上。Drupal 8 /如果当前节点相同,我如何在视图列表中添加额外的类/突出显示'查看项目'?

如何添加一个类到视图项目,所以我可以使它活动?

取决于你是如何呈现的观点,你应该使用预处理,例如,用于网格渲染

function MYTHEME_preprocess_views_view_grid(&$variables) {} 

一旦你做,你可以添加一些逻辑到预处理器,并根据这个逻辑添加类

function MYTHEME_preprocess_views_view_grid(&$variables) { 
    $options = $variables['view']->style_plugin->options; 
    $item_num = 0; 
    $items = []; 

    // Iterate over each rendered views result row. 
    foreach ($variables['rows'] as $item) { 
    // Add item attributes 

    $item_attrs = []; 
    $item_attrs['class'] = "view-grid__item view-grid__item--{$item_num}"; 
    $items[$item_num]['attributes'] = new Attribute($item_attrs); 

    // Add item.content 
    $items[$item_num]['content'] = $item; 

    // Increase, decrease or reset appropriate integers. 
    $item_num++; 

     } 

    // Add items to the variables array. 
    $variables['items'] = $items; 
} 

在这里看到更多信息 https://api.drupal.org/api/drupal/core!modules!views!views.theme.inc/function/template_preprocess_views_view/8.2.x