Buch Menü Name Template.php
am 28.10.2014 - 17:05 Uhr in
Ihr Lieben,
es ist mal wieder soweit: ich hab ein kleines Problem, bei dem ich nicht weiterkomme...
Ich spreche über meine Template.php meine Menüs an, damit sie als Bootstrap-Dropdown funktionieren (setze also über die Template.php ein paar Klassen hinzu)... Das Problem ist, dass sich das jetzt auf alle Menüs auswirkt. Das wär prinzipiell auch kein Problem bis auf die Book-Menüs, die ich in Form des normalen Blocks auf den entsprechenden Seiten einblenden möchte... Die werden nun auch erfasst und das möchte ich eigentlich nicht.
Das Problem ist, dass ich irgendwie nicht herausfinden kann, wie ich die Block-Book-Navigation von der entsprechenden Funktion in meiner Template.php ausschließen kann...
Hat da irgendwer von Euch eine Idee??
Wär für jede Hilfe dankbar!!
Beste Grüße,
Paul
- Anmelden oder Registrieren um Kommentare zu schreiben
Welche preprocess bzw. theme
am 28.10.2014 - 19:57 Uhr
Welche preprocess bzw. theme Funktionen überschreibst du denn in deiner template.php - hier lässt sich sicherlich auch herausfinden, zu welchem Menu der jeweilige "Baum" gehört. Ohne deinen Code genauer zu kennen, wird es schwierig dir hier weiterzuhelfen.
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
Hi Steffen! Dank Dir für
am 30.10.2014 - 09:45 Uhr
Hi Steffen!
Dank Dir für Deine Antwort. Ich hab das Problem mittlerweile gelöst bekommen. Ist zwar nicht wirklich dynamisch, aber es langt.
Für die Interessierten:
<?php
function meinTheme_menu_link(array $variables) {
$element = $variables['element'];
$sub_menu = '';
if ($element['#below']) {
// Keine Dropdowns beim Management-Menü.
if (($element['#original_link']['menu_name'] == 'management') && (module_exists('navbar'))) {
$sub_menu = drupal_render($element['#below']);
}
else {
// Keine Dropdowns bei Buch-Menüs.
if (($element['#original_link']['menu_name'] == 'book-toc-2' && 'book-toc-110' && 'book-toc-170' && 'book-toc-185' && 'book-toc-27' && 'book-toc-38' && 'book-toc-974' && 'book-toc-27')) {
$sub_menu = drupal_render($element['#below']);
}
else {
// Wrapper
unset($element['#below']['#theme_wrappers']);
$sub_menu = '<ul class="dropdown-menu">' . drupal_render($element['#below']) . '</ul>';
$element['#localized_options']['attributes']['class'][] = 'dropdown-toggle';
$element['#localized_options']['attributes']['data-toggle'] = 'dropdown';
// Submenu
if ((!empty($element['#original_link']['depth'])) && ($element['#original_link']['depth'] > 1)) {
// Generate as dropdown submenu
$element['#attributes']['class'][] = 'dropdown-submenu';
}
else {
// Standard dropdown
$element['#attributes']['class'][] = 'dropdown';
$element['#localized_options']['html'] = TRUE;
$element['#title'] .= ' <span class="caret"></span>';
}
// Trigger
$element['#localized_options']['attributes']['data-target'] = '#';
}
}
}
// Issue #1896674
if (($element['#href'] == $_GET['q'] || ($element['#href'] == '<front>' && drupal_is_front_page())) && (empty($element['#localized_options']['language']) || $element['#localized_options']['language']->language == $language_url->language)) {
$element['#attributes']['class'][] = 'active';
}
$output = l($element['#title'], $element['#href'], $element['#localized_options']);
return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}
?>