2017-11-11 108 views

回答

0

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

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

相关问题