You are here

function nodehierarchy_set_breadcrumbs in Node Hierarchy 7.4

Same name and namespace in other branches
  1. 5 nodehierarchy.module \nodehierarchy_set_breadcrumbs()
  2. 6.3 nodehierarchy.module \nodehierarchy_set_breadcrumbs()
  3. 6 nodehierarchy.module \nodehierarchy_set_breadcrumbs()
  4. 6.2 nodehierarchy.module \nodehierarchy_set_breadcrumbs()
  5. 7.2 nodehierarchy.module \nodehierarchy_set_breadcrumbs()

Set the breadcrumbs and active menu to reflect the position of the given node in the site hierarchy.

Parameters

$node: The current node

$add_node: Whether we want the current node in the breadcrumb (eg: for the children tab)

3 calls to nodehierarchy_set_breadcrumbs()
nodehierarchy_alter_node_form in ./nodehierarchy.admin.inc
Add Node Hierarchy settings to the node form.
nodehierarchy_node_view in ./nodehierarchy.module
Implements hook_node_view().
nodehierarchy_view_children in ./nodehierarchy.admin.inc
Display the children tab.

File

./nodehierarchy.module, line 264

Code

function nodehierarchy_set_breadcrumbs($node, $add_node = FALSE) {

  // Place the given node.
  $breadcrumb = array();

  // Get all the possible breadcrumbs for the node.
  $nid = empty($node->nid) ? null : $node->nid;
  $breadcrumb = nodehierarchy_get_breadcrumb($nid);

  // Remove the node itself if it's not needed (we would want it for the children tab for example).
  if ($add_node) {
    $uri = entity_uri('node', $node);
    $breadcrumb[] = l($node->title, $uri['path'], $uri['options']);
  }

  // Stick the home link on the top of the breadcrumb.
  array_unshift($breadcrumb, l(t('Home'), '<front>'));
  drupal_set_breadcrumb($breadcrumb);
}