breadcrumb korrekcio ha 'collapsed' menuelemeket hasznalunk

eaposztrof képe

a breadcrumb-on alapertelmezettkent nem latszik a node tenyleges eleresi utvonala ha a felmeno menuelemet elrejted (disable). ez abban az esetben szukseg, ha az alabbi felepitest akarod elerni:

menu1 (href=node1)
-submenu1 (href=node/2)
-submenu2 (href=node/3)
-submenu3 (href=node/4)

tehat ha a menu1 re klikkelve is be akarsz tolteni egy oldalt, letrehozol egy content-et, a menu1 ala rendeled, majd az admin/build/menu oldalon az uj submenu elemet disabledre rakod, igy nem fog latszani a submenuk kozt, es a menu1 expanded lesz raklikk utan

a node/1 oldalon a breadcrumb-om igy nez ki, ha a page.tpl.php-ben felveszem a breadcrumb utan a node title-t is (ez jelen esetben ajanlott, es SEO szempontbol is optimalis) :

home » node title

a node/2 oldalon pedig igy:

home » menu1 » submenu1 » node title

az alabbi modositasokkal ezt kapjuk:

node/1:

home » menu1 » node title

node/2:

home » menu1 » submenu1 » node title

includes/menu.inc:

function menu_get_active_breadcrumb() {
 
  // No breadcrumb for the front page.
  if (drupal_is_front_page()) {
    return array();
  }
 
	$links[] = l(t('Home'), '');
	$trail = _menu_get_active_trail();
	$disabled_menu_in_breadcrumb = FALSE;
	foreach ($trail as $mid) {
		$item = menu_get_item($mid);
		$link = menu_item_link($mid);
		if ($item['type'] & MENU_VISIBLE_IN_BREADCRUMB) {
			$links[] = $link;
			$disabled_menu_in_breadcrumb = TRUE;
		}
		if (($disabled_menu_in_breadcrumb) and
			($item['type'] & MENU_DEFAULT_LOCAL_TASK)) {
			$links[] = $link;
		}
	}
  array_pop($links);
  return $links;
}

page.tpl.php:

<div id="breadcrumb">
	<?php print $breadcrumb ?><?php if (($title != "") && !preg_match("/$title/",$breadcrumb)): ?> &raquo; <?php print $title ?><?php endif; ?>
</div>
Fórum: 
eaposztrof képe

apro , de anal lenyegesebb valtoztatas a page.tpl.php-ben:

<div id="breadcrumb">
     <?php print $breadcrumb ?><?php if (($title != "") && !preg_match("/$title/",strip_tags($breadcrumb))): ?>&nbsp;&raquo; <a><?php print $title ?></a><?php endif; ?>
	</div>

see u on the otherside!

0
0

42