Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

primlinks active

Eingetragen von cKoNe_RaZoR (17)
am 18.06.2009 - 07:14 Uhr in
  • Themes & Theming
  • Drupal 6.x

Hallo liebe Drupaler,

noch eine kleine Frage nebenbei:

Habe den Primary Links meiner Drupalinstallation einfach mal ein neues Aussehen verpasst. Benutze kein vorgefertigtes Theme, sondern ein komplett selbst erstelltes. Nun habe ich - zu dem bereits vorhandenen Link auf die Startseite - einen Link auf eine Unterkategorie der Suche gesetzt und der will mir patout den Link nicht auf active setzen!

Gibt es eine Möglichkeit, das irgendwie manuell in meine page.tpl.php zu schreiben?
Nach dem Motto if active add class active oder so?

LG cK

‹ captcha modul themen [gelöst] Login Form - Benutzername - Beschreibung ändern ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

active trail

Eingetragen von stBorchert (6003)
am 18.06.2009 - 08:01 Uhr

Moin.
Für gewöhnlich funktioniert das über die Funktion menu_get_active_trail.
Da Du den Link jedoch per Hand einbaust, kannst Du auch eine kleine eigene Hilfsfunktion verwenden.
Lustigerweise hatte ich gestern exakt soetwas gebaut:

<?php
function link_is_active($href) {
 
$path = implode('/', arg());
  if (
$path_elements == $href) {
    return
TRUE;
  }
}
function
link_is_in_active_trail($href) {
 
$path = implode('/', arg());
  if (
strpos($path, $href) > -1) {
    return
TRUE;
  }
}
?>

Diese beiden Funktionen packst Du in Deine template.php und kannst sie dann an beliebiger Stelle aufrufen.

<?php
$href
= 'node/123';
$classes = '';
if (
link_is_active($href)) {
 
$classes .= ' active';
}
if (
link_is_in_active_trail($href)) {
 
$classes .= ' active-trail';
}
print
l(t('my link title'), $href, 'attributes' => array('class' => $classes));
?>

hth,

 Stefan

--
sei nett zu Deinem Themer

  • Anmelden oder Registrieren um Kommentare zu schreiben

hey thx

Eingetragen von cKoNe_RaZoR (17)
am 18.06.2009 - 14:24 Uhr

danke erstmal...stefan dir sollte ein Orden verliehen werden

print l(t('my link title'), $href, 'attributes' => array('class' => $classes));

ist dass eine liste oder was? li oder nicht?

wie ruf ich die denn dann auf? Würd sie halt gerne über das Admin-Theme verwalten..

Möchte sie in Primary Links haben geht das?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Links

Eingetragen von stBorchert (6003)
am 18.06.2009 - 14:33 Uhr
cKoNe_RaZoR schrieb

danke erstmal...stefan dir sollte ein Orden verliehen werden

Schonwieder? Äh ich meinte: au ja toll ... :-)

cKoNe_RaZoR schrieb

ist dass eine liste oder was? li oder nicht?

l()

cKoNe_RaZoR schrieb

wie ruf ich die denn dann auf? Würd sie halt gerne über das Admin-Theme verwalten..
Möchte sie in Primary Links haben geht das?

Hm. Dann pack den Link doch einfach in das Menü "primary links" rein. Damit hast Du dann auch gleich automagisch die "active"-Klassen.

hth,

 Stefan

--
sei nett zu Deinem Themer

  • Anmelden oder Registrieren um Kommentare zu schreiben

Bitte, ein wenig Nachhilfe

Eingetragen von funkytraffic (13)
am 23.07.2009 - 18:36 Uhr

Bevor ich diesen thread sah, habe ich jenen eröffnet:
http://www.drupalcenter.de/node/20279

Leider verstehe weder Deine Funktion noch menu_get_active_trail

Wenn ich es richtig verstehe ist, kann ich mit menu_get_active_trail einen Link aktivieren?

Ich habe in meiner node.tpl.php folgendes versucht:

menu_set_active_menu_name('menu-rubrik');
if ( (arg(0) == 'node' && is_numeric(arg(1))) ) {
    $path_prefix = 'taxonomy/term/';
    if (!(count ($node->taxonomy) == 0)) {
        foreach($node->taxonomy as $term) {
           if ($term->vid == 1)  {
              $location[] = array('href' => 'http://localhost/drupal'.$path_prefix.($term->tid), 'attributes' => array('class' => active));
               menu_set_active_trail($location);
           }
        }
    }
}

Funzt leider nicht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Sorry noch mal korrigiert

Eingetragen von funkytraffic (13)
am 23.07.2009 - 18:43 Uhr

Also mein script für node.tpl.php sieht jetzt so aus (ohne zu funktionieren):

menu_set_active_menu_name('menu-rubrik');
if ( (arg(0) == 'node' && is_numeric(arg(1))) ) {
    $path_prefix = 'taxonomy/term/';
    foreach($node->taxonomy as $term) {
        if ($term->vid == 1)  {
            $location[] = array('href' => $path_prefix.($term->tid), 'attributes' => array('class' => 'active'));
            menu_set_active_trail($location);
        }
    }
}

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • gepatchte PHP Version 7.4 für Windows
  • Рейтинг онлайн казино 2026 — полный разбор
  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
Weiter

Neue Kommentare

  • Danke Schmittrich. Die Frage
    vor 5 Stunden 20 Minuten
  • Keine Antwort auf die Frage nach dem Woher
    vor 8 Stunden 29 Sekunden
  • Danke ich werde mir die
    vor 5 Wochen 5 Tagen
  • Vielen Dank für Ihren
    vor 6 Wochen 19 Stunden
  • Composer ist sehr ratsam
    vor 6 Wochen 2 Tagen
  • Vielen Dank für den
    vor 6 Wochen 5 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 6 Wochen 5 Tagen
  • Gut gemacht
    vor 6 Wochen 5 Tagen
  • Layout Builder etc. z.B. für Landing Pages
    vor 6 Wochen 5 Tagen
  • Links
    vor 7 Wochen 1 Tag

Statistik

Beiträge im Forum: 250320
Registrierte User: 20569

Neue User:

  • AnthonyhoF
  • CasinoTopsam
  • Philiphelve

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 17 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association