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;
}