id() == "programmes"){ $rows = $variables['rows']; foreach ($rows as $id => $row) { $variables['rows'][$id]['attributes'] = new Attribute(); $c = $variables['rows'][$id]['content']["#row"]->nid; $variables['rows'][$id]['attributes']->addClass("popsu-node-".$c); //kint($variables['rows'][$id]['content']["#row"]->nid); } }else{ if ($view->current_display == "block_1") { $rows = $variables['rows']; foreach ($rows as $id => $row) { $variables['rows'][$id]['attributes'] = new Attribute(); $c = $variables['rows'][$id]['content']["#row"]->nid; $variables['rows'][$id]['attributes']->addClass("popsu-node-".$c); } } } }; /* implements template_preprocess_region() */ function popsu_preprocess_region(&$variables) { if (isset($variables['region'])) { $variables['attributes']['class'][] = $variables['region'].'_container'; } // if ($variables['region'] == 'footer_bottom_right') { // if ($node = \Drupal::routeMatch()->getParameter('node')) { // $t = $node->getType(); // } // } } // function popsu_preprocess_field(&$variables){ // $v = $variables; // } // function popsu_theme_suggestions_views_view_alter(array &$suggestions, array $variables) { // $v = $variables; // $suggestions[] = 'views_view__headerView'; // } /** * Implements hook_preprocess_block(). */ // function popsu_preprocess_block(&$variables) { // $t="t"; // } function popsu_preprocess_views_view_field(&$variables){ // check if link to entoty option is true $settings = isset($variables['field']->options['settings']) ? $variables['field']->options['settings'] : false; if ($settings && isset($settings['link_to_entity']) && $settings['link_to_entity']) { // get the entity and build the classes $entity = $variables['row']->_entity; // $target_id = $entity; // build new classes $new_classes = array( $entity->getEntityTypeId(), $entity->getEntityTypeId().'-'.$entity->bundle(), $entity->getEntityTypeId().'-'.$entity->bundle().'-'.$entity->id() ); // get the entity link and url $link = $entity->toLink(); $url = $entity->toLink()->getUrl(); // set the active_class option to the url $url->setOption('set_active_class', true); // add new classes to the url (without overwriting existing once) $options = $url->getOptions(); if(isset($options['attributes']) && $attributes = $options['attributes']){ if(isset($attributes['class']) && $classes = $attributes['class']){ $attributes['class'] += $new_classes; }else{ $attributes['class'] = $new_classes; } }else{ $attributes = array( "class" => $new_classes ); } $url->setOption('attributes', $attributes); // update the url of the link $link->setUrl($url); // overwrite the output $variables['output'] = $link->toRenderable(); } }