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

Wie kann man bestimmte Node-Links als Dropdown darstellen? Doppelte verschachtelung..

Eingetragen von harlekinx (6)
am 20.08.2010 - 11:13 Uhr in
  • Themes & Theming
  • Drupal 6.x

Hallo Leute,

ich möchte bei meinen Node-Links (Add comment, Read more,...) nochmals eine Verschachtelung einfügen.
Und zwar hätte ich dort gerne einen Link, der dann eine Dropdown öffnet. Stelle mir das so wie bei Digg vor -> Screenshot.

Damit das richtig funktioniert brauchen die ausklappbaren Links nochmals eine LI-Struktur unter sich.
Beispiel:

<ul class="links inline">
  <li class="comment_comments first">
    <a href="xxx" title="Jump to the first comment of this posting.">3 comments</a>
  </li>
  <li class="node_read_more">
    <a href="xxx" title="Read the rest of XXX">Read more</a>
  </li>
  <!-- Hier folgt der "Drop-down"-Link. Neben dem Anchor sind die anderen Links als Liste drin. -->
  <li class="admin last">
    <a href="xxx" class="dropdown-link">Admin</a>
    <ul class="links">
      <li class="0 first">
        <a href="xxx">Unpublish</a>
      </li>
      <li class="1 last">
        <a href="xxx">Delete</a>
      </li>
    </ul>
  </li>
</ul>

Momentan habe ich das wie folgt gelöst:

1) In meinem Modul verwende ich hook_link und füge den Link + Unterlinks hinzu. Die Unterlinks füge ich als Array hinzu.

$links['admin'] = array(
  ...
);

$links['admin']['unpublish'] = array(
  ...
);

$links['admin']['delete'] = array(
  ...
);

2) Und im Template überschreibe ich dann theme_links. Hier extrahiere ich einfach die verschachtelten Links und rufe für diese nochmals theme_links auf


// Füge verschachtelte Links hinzu. Falls vorhanden
foreach($link as $elem_key => $element) {
  if(is_array($element) && $elem_key !== 'attributes') {
    $inner_links[] = $element;
  }
}
if(!empty($inner_links)) {
  $output .= theme('links', $inner_links);
}

Es funktioniert zwar, aber mir kommt die Lösung einfach nicht richtig vor. Habt ihr einen anderen Vorschlag? Wie wäre der Drupal-Way?

‹ corolla theme spaltenzahl einstellen 3 Spalten Layout ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Das würde ich rein über

Eingetragen von aschiwi (1113)
am 20.08.2010 - 12:44 Uhr

Das würde ich rein über Theming lösen, d.h. ohne Modul.

Mir fehlt gerade die Zeit zum Erklären, aber schau dir mal Mortens ausführliches Tutorial zu $links an: http://morten.dk/blog/links-garbage-can-nodetpl

  • Anmelden oder Registrieren um Kommentare zu schreiben

danke aschiwi. Habs jetzt

Eingetragen von harlekinx (6)
am 30.08.2010 - 14:06 Uhr

danke aschiwi. Habs jetzt über das Theme gelöst!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 9 Stunden
  • Hey danke
    vor 2 Wochen 1 Tag
  • Update: jetzt gibt's ein
    vor 2 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 6 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 6 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 3 Tagen
  • In der entsprechenden View
    vor 3 Wochen 3 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 3 Tagen
  • gelöst
    vor 6 Wochen 6 Stunden
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 1 Tag

Statistik

Beiträge im Forum: 250233
Registrierte User: 20453

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 21 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