Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Path Breadcrumbs и Views

Path Breadcrumbs и Views
, by

Подскажите пожалуйста как c помощью модуля Path Breadcrumbs построить крошки для страницы сгенерированной с помощью Views? Тоесть, например, у меня есть тип материала Новость и есть страница, сгенеренная во Views - простой листинг тизеров Новостей. Как построить крошки к самим новостям я разобрался. С этим проблем нет. А вот как построить крошки ко вьюхе с листингом новостей мне не понятно. Нужно чтобы на вьюхе с листингом новостей была крошка Главная > Новости (где Новости - ссылка на вьюху с листингом новостей). Возможно это очень просто, но не могу понять( И в инете очень мало инфы по этому модулю PB.

1 answer
votes: 1209
Answer

Это проще всего сделать через php-код, нужно добавить вот такую функцию в template.php вашей темы:

function dml_breadcrumb($variables) {
  $breadcrumb = $variables['breadcrumb'];
  //для нод
  if(arg(0) == 'node' && is_numeric(arg(1)){
    $node = node_load(arg(1));
    if($node->type == 'news'){
      $breadcrumb[] = '<a href="/news">Новости</a>';
    }
  }
  //для таксономии
  if(arg(0) == 'taxonomy' && arg(1) == 'term' && is_numeric(arg(2))){
    $term = taxonomy_term_load(arg(2));
    if($term->vocabulary_machine_name == 'catalog'){
      $last_bread = array_pop($breadcrumb);
    }
  }
  if (!empty($breadcrumb)) {
    // Provide a navigational heading to give context for breadcrumb links to
    // screen-reader users. Make the heading invisible with .element-invisible.
    $output = '<h2 class="element-invisible">' . t('You are here') . '</h2>';

    $output .= '<div class="breadcrumb">' . implode('<img src="/sites/all/themes/dml/images/breadcrumb.gif" hspace=10>', $breadcrumb) . '</div>';
    return $output;
  }
}

 Можете скачать тему zen и посмотреть как там сделано.