1.20.x taxonomy.views.inc views_taxonomy_set_breadcrumb(&$breadcrumb, &$argument)

Helper function to set a breadcrumb for taxonomy.

File

modules/taxonomy/views/taxonomy.views.inc, line 438
Provide views data and handlers for taxonomy.module.

Code

function views_taxonomy_set_breadcrumb(&$breadcrumb, &$argument) {
  if (empty($argument->options['set_breadcrumb'])) {
    return;
  }

  $args = $argument->view->args;
  $parents = taxonomy_term_load_parents_all($argument->argument);
  foreach (array_reverse($parents) as $parent) {
    // Unfortunately parents includes the current argument. Skip.
    if ($parent->tid == $argument->argument) {
      continue;
    }
    if (!empty($argument->options['use_taxonomy_term_path'])) {
      $path = $parent->uri();
      $path = $path['path'];
    }
    else {
      $args[$argument->position] = $parent->tid;
      $path = $argument->view->get_url($args);
    }
    $breadcrumb[$path] = check_plain($parent->name);
  }
}